2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-03-03 16:56:54 +00:00

74_AMAD: more better method for wlan keep alive, new Readings for battery state

git-svn-id: https://svn.fhem.de/fhem/trunk@11673 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
markooldenburg 2016-06-16 08:22:16 +00:00
parent 18e92911aa
commit 25766b7018
3 changed files with 367 additions and 348 deletions

View File

@ -1,5 +1,7 @@
# Add changes at the top of the list. Keep it in ASCII, and 80-char wide.
# Do not insert empty lines here, update check depends on it.
- feature: 74_AMAD: more better method for wlan keep alive, new Readings
for battery live state
- bugfix: 73_km200.pm: Bugfix for set command with switchprograms
- feature: 73_GasCalculator: set command finaly implemented. :-)
- changed: 30_LIGHTIFY.pm: added disabledForIntervals

View File

@ -37,8 +37,8 @@ use TcpServerUtils;
use Encode qw(encode);
my $modulversion = "2.2.2";
my $flowsetversion = "2.2.1";
my $modulversion = "2.2.3";
my $flowsetversion = "2.2.2";
@ -1363,6 +1363,8 @@ sub AMAD_decrypt($) {
<li>airplanemode - on/off, state of the aeroplane mode</li>
<li>androidVersion - currently installed version of Android</li>
<li>automagicState - state of the Automagic App <b>(prerequisite Android >4.3). In case you have Android >4.3 and the reading says "not supported", you need to enable Automagic inside Android / Settings / Sound & notification / Notification access</b></li>
<li>batteryHealth - the health of the battery (1=unknown, 2=good, 3=overheat, 4=dead, 5=over voltage, 6=unspecified failure, 7=cold)</li>
<li>batterytemperature - the temperature of the battery</li>
<li>bluetooth - on/off, bluetooth state</li>
<li>checkActiveTask - state of an app (needs to be defined beforehand). 0=not active or not active in foreground, 1=active in foreground, <b>see note below</b></li>
<li>connectedBTdevices - list of all devices connected via bluetooth</li>
@ -1519,6 +1521,8 @@ sub AMAD_decrypt($) {
<li>airplanemode - Status des Flugmodus</li>
<li>androidVersion - aktuell installierte Androidversion</li>
<li>automagicState - Statusmeldungen von der AutomagicApp <b>(Voraussetzung Android >4.3). Ist Android gr&ouml;&szlig;er 4.3 vorhanden und im Reading steht "wird nicht unterst&uuml;tzt", mu&szlig; in den Androideinstellungen unter Ton und Benachrichtigungen -> Benachrichtigungszugriff ein Haken f&uuml;r Automagic gesetzt werden</b></li>
<li>batteryHealth - Zustand der Battery (1=unbekannt, 2=gut, 3=&Uuml;berhitzt, 4=tot, 5=&Uumlberspannung, 6=unbekannter Fehler, 7=kalt)</li>
<li>batterytemperature - Temperatur der Batterie in Grad Fahrenheit</li>
<li>bluetooth - on/off, Bluetooth Status an oder aus</li>
<li>checkActiveTask - Zustand einer zuvor definierten APP. 0=nicht aktiv oder nicht aktiv im Vordergrund, 1=aktiv im Vordergrund, <b>siehe Hinweis unten</b></li>
<li>connectedBTdevices - eine Liste der verbundenen Ger&auml;t</li>
@ -1529,7 +1533,7 @@ sub AMAD_decrypt($) {
<li>currentMusicTrack - aktuell abgespielter Musiktitel des verwendeten Mediaplayers</li>
<li>daydream - on/off, Daydream gestartet oder nicht</li>
<li>deviceState - Status des Androidger&auml;tes. unknown, online, offline.</li>
<li>doNotDisturb - aktueller Status des nicht stören Modus</li>
<li>doNotDisturb - aktueller Status des nicht st&ouml;ren Modus</li>
<li>dockingState - undocked/docked Status ob sich das Ger&auml;t in einer Dockinstation befindet.</li>
<li>flow_SetCommands - active/inactive, Status des SetCommands Flow</li>
<li>flow_informations - active/inactive, Status des Informations Flow</li>
@ -1568,7 +1572,7 @@ sub AMAD_decrypt($) {
<li>bluetooth - on/off, aktiviert/deaktiviert Bluetooth</li>
<li>clearNotificationBar - All,Automagic, l&ouml;scht alle Meldungen oder nur die Automagic Meldungen in der Statusleiste</li>
<li>currentFlowsetUpdate - f&uuml;rt ein Flowsetupdate auf dem Device durch</li>
<li>doNotDisturb - schaltet den nicht st&ouml;ren Modus, always immer Stören, never niemals stören, alarmClockOnly nur Wecker darf st&ouml;ren, onlyImportant nur wichtige St&ouml;rungen</li>
<li>doNotDisturb - schaltet den nicht st&ouml;ren Modus, always immer st&ouml;ren, never niemals st&ouml;ren, alarmClockOnly nur Wecker darf st&ouml;ren, onlyImportant nur wichtige St&ouml;rungen</li>
<li>googleMusic - play, stop, next, back ,steuert den Google Play Musik Mediaplayer</li>
<li>installFlowSource - installiert einen Flow auf dem Device, <u>das XML File muss unter /tmp/ liegen und die Endung xml haben</u>. <b>Bsp:</b> <i>set TabletWohnzimmer installFlowSource WlanUebwerwachen.xml</i></li>
<li>nextAlarmTime - setzt die Alarmzeit. gilt aber nur innerhalb der n&auml;chsten 24Std.</li>

View File

@ -1013,6 +1013,11 @@ or global_deviceport!= {header_dport}</expression>
<all>false</all>
<ssidList>{global_apssid}</ssidList>
</condition>
<condition type="wifi_available">
<useDefaultName>true</useDefaultName>
<name>WLAN verfügbar: {global_apssid}</name>
<ssidList>{global_apssid}</ssidList>
</condition>
<action type="http_request">
<useDefaultName>false</useDefaultName>
<name>Airplainemode</name>
@ -2328,8 +2333,8 @@ FHEMCMD: setreading</customHTTPHeaders>
</action>
<action type="script">
<useDefaultName>true</useDefaultName>
<name>Script: amad_flowset_version = "2.2.1"</name>
<script>amad_flowset_version = "2.2.1"</script>
<name>Script: amad_flowset_version = "2.2.2"</name>
<script>amad_flowset_version = "2.2.2"</script>
</action>
<action type="script">
<useDefaultName>true</useDefaultName>
@ -2782,7 +2787,7 @@ FHEMCMD: voiceinputvalue</customHTTPHeaders>
<httpMethod>POST</httpMethod>
<httpContentType>GENERAL_TEXT</httpContentType>
<contentType>text/plain</contentType>
<generalTextData>powerLevel@@{battery_percentage,numberformat,0}@@@@powerPlugged@@{battery_plugged}@@@@</generalTextData>
<generalTextData>powerLevel@@{battery_percentage,numberformat,0}@@@@powerPlugged@@{battery_plugged}@@@@batteryTemperature@@{battery_temperature}@@@@batteryHealth@@{battery_health}@@@@</generalTextData>
<formFieldList>@@@@readingsNameXYZ@@readingsValueABC</formFieldList>
<timeout>60000</timeout>
<setCustomHTTPHeaders>true</setCustomHTTPHeaders>
@ -2809,134 +2814,17 @@ FHEMCMD: setreading</customHTTPHeaders>
<vibratePattern>vibrate_pattern_2</vibratePattern>
<customPattern>0,500</customPattern>
</action>
<action type="wifi_reassociate">
<useDefaultName>true</useDefaultName>
<name>WLAN Reassoziieren</name>
</action>
<flow type="flow">
<name>Informations</name>
<group>AMAD2 Info/Control Flowset v2.2.1</group>
<group>AMAD2 Info/Control Flowset v2.2.2</group>
<enabled>true</enabled>
<executionPolicy>PARALLEL</executionPolicy>
<emergencyStopCount>900</emergencyStopCount>
<conditioncontainer id="t1" x="1155.0" y="-3132.5">Expression: trigger == "Daydream Status: Gestartet"</conditioncontainer>
<actioncontainer id="t2" x="-210.0" y="-2082.5">Script: setCommandFlow_state = "inaktiv"</actioncontainer>
<actioncontainer id="t3" x="1085.0" y="-3482.5">Script: daydream_state = "on"</actioncontainer>
<actioncontainer id="t4" x="1225.0" y="-3482.5">Script: daydream_state = "off"</actioncontainer>
<actioncontainer id="t5" x="420.0" y="-3587.5">Script: next_alarmday = "{next_alarm,dateformat,c}"</actioncontainer>
<actioncontainer id="t6" x="630.0" y="-3587.5">Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}"</actioncontainer>
<actioncontainer id="t7" x="525.0" y="-3307.5">Initialisiere Variable Nächster Alarm: next_alarm</actioncontainer>
<conditioncontainer id="t8" x="1925.0" y="-2082.5">Expression: getAndroidSDKVersion() &gt;= "19"</conditioncontainer>
<actioncontainer id="t9" x="2275.0" y="-2292.5">Script: runTask = "1"</actioncontainer>
<actioncontainer id="t10" x="2135.0" y="-2292.5">Script: runTask = "0"</actioncontainer>
<actioncontainer id="t11" x="1925.0" y="-2292.5">Script: runTask = "not supported android version"</actioncontainer>
<actioncontainer id="t12" x="1715.0" y="-2327.5">Script: runTask = "null"</actioncontainer>
<conditioncontainer id="t13" x="0.0" y="-2782.5">Expression: trigger == "Systemeinstellung verändert: System volume_ring_speaker"</conditioncontainer>
<conditioncontainer id="t14" x="525.0" y="-2782.5">Expression: trigger == "Systemeinstellung verändert: System next_alarm"</conditioncontainer>
<conditioncontainer id="t15" x="1505.0" y="-2782.5">Expression: trigger == "Systemeinstellung verändert: System screen_brightness"</conditioncontainer>
<actioncontainer id="t16" x="-1225.0" y="-3657.5">Script: airplanemode = "off"</actioncontainer>
<conditioncontainer id="t17" x="-1050.0" y="-3657.5">Expression: airpcount &lt; 11</conditioncontainer>
<actioncontainer id="t18" x="-1540.0" y="-3517.5">Script: keyguard = "unlocked"</actioncontainer>
<actioncontainer id="t19" x="-1540.0" y="-3832.5">Script: screen_state = "off {keyguard}"</actioncontainer>
<conditioncontainer id="t20" x="1855.0" y="-3027.5">Display Orientierung: Portrait</conditioncontainer>
<actioncontainer id="t21" x="1785.0" y="-3272.5">Script: screen_orientation = "portrait"</actioncontainer>
<actioncontainer id="t22" x="1925.0" y="-3272.5">Script: screen_orientation = "landscape"</actioncontainer>
<conditioncontainer id="t23" x="1855.0" y="-3482.5">Display automatisch drehen eingeschaltet</conditioncontainer>
<actioncontainer id="t24" x="2730.0" y="-3482.5">Script: dock_state = "docked"</actioncontainer>
<actioncontainer id="t25" x="2870.0" y="-3482.5">Script: dock_state = "undocked"</actioncontainer>
<actioncontainer id="t26" x="3150.0" y="-3482.5">Script: keyguardSet = "1"</actioncontainer>
<actioncontainer id="t27" x="3290.0" y="-3482.5">Script: keyguardSet = "0"</actioncontainer>
<actioncontainer id="t28" x="1785.0" y="-3657.5">Script: screen_orientation_mode = "auto"</actioncontainer>
<actioncontainer id="t29" x="1925.0" y="-3657.5">Script: screen_orientation_mode = "manual"</actioncontainer>
<conditioncontainer id="t30" x="1855.0" y="-2782.5">Expression: trigger == "Display Orientierung: Landscape" or trigger == "Display Orientierung: Portrait" or trigger == "Display Status: Ein" or trigger == "Display Status: Aus"</conditioncontainer>
<actioncontainer id="t31" x="0.0" y="-2082.5">Script: setCommandFlow_state = "aktiv"</actioncontainer>
<conditioncontainer id="t32" x="-105.0" y="-1907.5">Flow Aktiv: SetCommands</conditioncontainer>
<actioncontainer id="t33" x="-105.0" y="-2257.5">Setze Flow Status: Aktivieren SetCommands</actioncontainer>
<actioncontainer id="t34" x="-1680.0" y="-3832.5">Script: screen_state = "on {keyguard}"</actioncontainer>
<actioncontainer id="t35" x="-1610.0" y="-3097.5">Script: scrcount = 0</actioncontainer>
<actioncontainer id="t36" x="-1680.0" y="-3517.5">Script: keyguard = "locked"</actioncontainer>
<conditioncontainer id="t37" x="-1610.0" y="-3657.5">Display eingeschaltet</conditioncontainer>
<conditioncontainer id="t38" x="-1610.0" y="-3342.5">Keyguard gesperrt</conditioncontainer>
<conditioncontainer id="t39" x="-1855.0" y="-3832.5">Expression: scrcount &lt; 5</conditioncontainer>
<actioncontainer id="t40" x="-1855.0" y="-3657.5">Script: scrcount = scrcount + 1</actioncontainer>
<actioncontainer id="t41" x="-1855.0" y="-3517.5">Pause: 2s (Gerät wach halten)</actioncontainer>
<conditioncontainer id="t42" x="-1855.0" y="-3342.5">Expression: keyguard == "locked"</conditioncontainer>
<conditioncontainer id="t43" x="210.0" y="-2782.5">Expression: trigger == "Systemeinstellung verändert: System volume_music_bt_a2dp" or trigger == "Systemeinstellung verändert: System volume_music_speaker" or trigger == "Systemeinstellung verändert: System volume_music_headphone"</conditioncontainer>
<conditioncontainer id="t44" x="-770.0" y="-3342.5">Musik Aktiv</conditioncontainer>
<conditioncontainer id="t45" x="-455.0" y="-3097.5">Bluetooth eingeschaltet</conditioncontainer>
<actioncontainer id="t46" x="-455.0" y="-3552.5">Script: bluetooth_state = "off"</actioncontainer>
<actioncontainer id="t47" x="-455.0" y="-3342.5">Script: bluetooth_state = "on"</actioncontainer>
<conditioncontainer id="t48" x="-315.0" y="-3097.5">Bluetooth Gerät verbunden: Beliebiges Geräte</conditioncontainer>
<actioncontainer id="t49" x="-315.0" y="-3552.5">Script: connected_devices_names = "null"; connected_devices_addresses = "null"</actioncontainer>
<conditioncontainer id="t50" x="1155.0" y="-2782.5">Expression: trigger == "Daydream Status: Gestartet" or trigger == "Daydream Status: Gestoppt"</conditioncontainer>
<conditioncontainer id="t51" x="3535.0" y="-2782.5">Expression: trigger == "Eingehender Anruf. Status: Klingelt, Nummern: Alle"</conditioncontainer>
<actioncontainer id="t52" x="2170.0" y="-3482.5">Script: notification_text = "Aktiviere Automagic unter Einstellungen -&gt; Benachrichtigungen -&gt; Benachrichtigungszugriff"</actioncontainer>
<conditioncontainer id="t53" x="2310.0" y="-3482.5">Benachrichtigung in Statusbar angezeigt: Automagic</conditioncontainer>
<conditioncontainer id="t54" x="3885.0" y="-3132.5">Expression: getAndroidSDKVersion() &gt;= "19"</conditioncontainer>
<actioncontainer id="t55" x="3745.0" y="-3482.5">Script: notification_text = "Aktiviere Automagic unter Einstellungen -&gt; Benachrichtigungen -&gt; Benachrichtigungszugriff"</actioncontainer>
<actioncontainer id="t56" x="4025.0" y="-3482.5">Script: notification_text = "not supported from your device"</actioncontainer>
<conditioncontainer id="t57" x="3885.0" y="-3482.5">Benachrichtigung in Statusbar angezeigt: WhatsApp</conditioncontainer>
<conditioncontainer id="t58" x="4270.0" y="-2782.5">Expression: trigger == "Genereller Broadcast: wenn org.smblott.intentradio.STATE"</conditioncontainer>
<conditioncontainer id="t59" x="3885.0" y="-2782.5">Expression: trigger == "Benachrichtigung in Statusbar angezeigt: com.whatsapp"</conditioncontainer>
<actioncontainer id="t60" x="1995.0" y="-2537.5">Check run Task</actioncontainer>
<actioncontainer id="t61" x="-1610.0" y="-4042.5">Screen State</actioncontainer>
<actioncontainer id="t62" x="-455.0" y="-3832.5">Bluetooth Status</actioncontainer>
<actioncontainer id="t63" x="-315.0" y="-3832.5">Bluetooth Device Status</actioncontainer>
<actioncontainer id="t64" x="0.0" y="-3832.5">Notification Volume</actioncontainer>
<actioncontainer id="t65" x="210.0" y="-3832.5">Lautstärke / Volume</actioncontainer>
<actioncontainer id="t66" x="525.0" y="-3832.5">Nächster Alarm</actioncontainer>
<actioncontainer id="t67" x="1505.0" y="-3832.5">Screen Brightness</actioncontainer>
<actioncontainer id="t68" x="1855.0" y="-3832.5">Screen Orientation</actioncontainer>
<actioncontainer id="t69" x="2800.0" y="-3832.5">Dock State</actioncontainer>
<actioncontainer id="t70" x="3885.0" y="-3832.5">Incoming WhatsApp Message</actioncontainer>
<actioncontainer id="t71" x="4270.0" y="-3832.5">IntentRadio Status</actioncontainer>
<actioncontainer id="t72" x="-525.0" y="-2432.5">Flowsetversion</actioncontainer>
<actioncontainer id="t73" x="-105.0" y="-2432.5">Flow Status SetCommands</actioncontainer>
<conditioncontainer id="t74" x="-1610.0" y="-2782.5">Expression: trigger == "Display Status: Aus" or trigger == "Display Status: Ein" or udef_trigger == "setLockPin"</conditioncontainer>
<actioncontainer id="t75" x="-1050.0" y="-3517.5">Script: airpcount = airpcount + 1</actioncontainer>
<actioncontainer id="t76" x="-1120.0" y="-3097.5">Script: airpcount = 0</actioncontainer>
<actioncontainer id="t77" x="-1050.0" y="-3342.5">Pause: 2s (Gerät wach halten)</actioncontainer>
<conditioncontainer id="t78" x="-1225.0" y="-3517.5">Expression: global_apssid != "usb-ethernet"</conditioncontainer>
<conditioncontainer id="t79" x="-1225.0" y="-3342.5">WLAN Verbunden: {global_apssid}</conditioncontainer>
<conditioncontainer id="t80" x="2800.0" y="-3132.5">Dock Status: Docked</conditioncontainer>
<conditioncontainer id="t81" x="2310.0" y="-2782.5">Expression: trigger == "Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic" or trigger == "Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic"</conditioncontainer>
<conditioncontainer id="t82" x="2800.0" y="-2782.5">Expression: trigger == "Dock Event: Docked" or trigger == "Dock Event: Undocked"</conditioncontainer>
<conditioncontainer id="t83" x="1995.0" y="-1907.5">Expression: global_activetask != null</conditioncontainer>
<conditioncontainer id="t84" x="-420.0" y="-2782.5">Expression: trigger == "Bluetooth Status: Schaltet aus, Aus" or trigger == "Bluetooth Status: Schaltet ein, Ein"</conditioncontainer>
<conditioncontainer id="t85" x="2205.0" y="-2082.5">App Task läuft: {global_activetask} (neuster)</conditioncontainer>
<actioncontainer id="t86" x="2310.0" y="-3832.5">Automagic State</actioncontainer>
<actioncontainer id="t87" x="2450.0" y="-3482.5">Script: notification_text = "not supported from your device"</actioncontainer>
<conditioncontainer id="t88" x="1015.0" y="157.5">Expression: global_fhemip != null or header_fhemip != null</conditioncontainer>
<actioncontainer id="t89" x="-455.0" y="682.5">Initialisiere Variable Systemeinstellung: volumeMusikBluetooth.2</actioncontainer>
<actioncontainer id="t90" x="-245.0" y="682.5">Initialisiere Variable Systemeinstellung: volumeMusikSpeaker.2</actioncontainer>
<conditioncontainer id="t91" x="-350.0" y="892.5">Bluetooth Gerät verbunden: Beliebiges Geräte (Advanced Audio Distribution)</conditioncontainer>
<actioncontainer id="t92" x="-420.0" y="1102.5">Script: volume = {volumeBT}</actioncontainer>
<actioncontainer id="t93" x="-280.0" y="1102.5">Script: volume = {volumeSP}</actioncontainer>
<actioncontainer id="t94" x="105.0" y="682.5">Initialisiere Variable Systemeinstellung: screenBrightness</actioncontainer>
<actioncontainer id="t95" x="315.0" y="682.5">Initialisiere Variable Systemeinstellung: volumeNotification</actioncontainer>
<conditioncontainer id="t96" x="805.0" y="1207.5">Expression: global_bridgeport == null or global_bridgeport != {header_bport} or global_fhemip == null or global_fhemip != {header_fhemip} or global_fhemdevice == null or global_fhemdevice != {header_fhemdevice} or global_activetask == null or global_activetask != {header_activetask} or global_apssid == null or global_apssid != {header_apssid} or global_deviceport != null or global_deviceport!= {header_dport}</conditioncontainer>
<actioncontainer id="t97" x="1260.0" y="1417.5">Script: androidVersion = "not supported funktion"</actioncontainer>
<actioncontainer id="t98" x="1330.0" y="1662.5">Android Version</actioncontainer>
<conditioncontainer id="t99" x="-1120.0" y="-2782.5">Expression: trigger == "Flugmodus: Aus"</conditioncontainer>
<conditioncontainer id="t100" x="2065.0" y="-1837.5">Expression: package_name == {global_activetask}</conditioncontainer>
<conditioncontainer id="t101" x="1015.0" y="-227.5">Expression: trigger == "App Task Beendet"</conditioncontainer>
<conditioncontainer id="t102" x="3220.0" y="-3132.5">Keyguard mit Sicherheit</conditioncontainer>
<actioncontainer id="t103" x="1155.0" y="-3832.5">Daydream State</actioncontainer>
<conditioncontainer id="t104" x="2310.0" y="-3027.5">Expression: getAndroidSDKVersion() &gt;= "19"</conditioncontainer>
<actioncontainer id="t105" x="1330.0" y="1207.5">Get Android Version</actioncontainer>
<conditioncontainer id="t106" x="3220.0" y="-2782.5">Expression: udef_trigger == "setLockPin"</conditioncontainer>
<actioncontainer id="t107" x="3535.0" y="-3832.5">Incoming Call</actioncontainer>
<actioncontainer id="t108" x="3220.0" y="-3832.5">KeyGuard Set</actioncontainer>
<conditioncontainer id="t109" x="1015.0" y="507.5">Expression: trigger == "HTTP Request: /fhem-amad/deviceInfo/"</conditioncontainer>
<conditioncontainer id="t110" x="4270.0" y="-1592.5">Expression: trigger == "Periodischer Timer: alle 30s" or trigger == "HTTP Request: /fhem-amad/deviceInfo/"</conditioncontainer>
<actioncontainer id="t111" x="4270.0" y="-892.5">Device State</actioncontainer>
<conditioncontainer id="t112" x="525.0" y="682.5">Stromversorgung: Angeschlossen</conditioncontainer>
<conditioncontainer id="t113" x="840.0" y="-2782.5">Expression: trigger == "Akku Ladestand: grösser als 0%"</conditioncontainer>
<actioncontainer id="t114" x="840.0" y="-3832.5">Stromversorgung und Akkustand</actioncontainer>
<actioncontainer id="t115" x="805.0" y="1417.5">Prüfe und setze globale Variablen</actioncontainer>
<conditioncontainer id="t116" x="-770.0" y="-2782.5">Expression: trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" or trigger == "com.amazon.mp3.metachanged"</conditioncontainer>
<actioncontainer id="t117" x="-770.0" y="-3517.5">Script: global_artist = "no player active"; global_track = "no player active"; global_album = "no player active"; global_musicapp = "no player active";</actioncontainer>
<actioncontainer id="t118" x="-1120.0" y="-3832.5">Airplainemode</actioncontainer>
<actioncontainer id="t119" x="-770.0" y="-3832.5">Reading Music Metachanged.2</actioncontainer>
<actioncontainer id="t120" x="-770.0" y="-3097.5">Pause: 3s (Gerät wach halten)</actioncontainer>
<actioncontainer id="t121" x="1015.0" y="-1382.5">Script: amad_flowset_version = "2.2.1"</actioncontainer>
<triggercontainer id="t122" x="1015.0" y="-927.5">
<triggercontainer id="t1" x="1015.0" y="-927.5">
<trigger>Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE</trigger>
<trigger>Stromversorgung: Angeschlossen</trigger>
<trigger>Genereller Broadcast: wenn org.smblott.intentradio.STATE</trigger>
@ -2976,230 +2864,355 @@ FHEMCMD: setreading</customHTTPHeaders>
<trigger>Systemeinstellung verändert: System volume_ring_speaker</trigger>
<trigger>Unterbrechnungen-Modus: Nur Wecker (Android 6+)</trigger>
</triggercontainer>
<conditioncontainer id="t123" x="-2100.0" y="-2782.5">Expression: trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_ALERT" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DISMISS" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_SNOOZE"</conditioncontainer>
<actioncontainer id="t124" x="-2100.0" y="-3832.5">Next Alarm State</actioncontainer>
<actioncontainer id="t125" x="-2100.0" y="-3517.5">Script: if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_ALERT") { nextalarmstate = "alert" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DISMISS") { nextalarmstate = "dismiss" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE") { nextalarmstate = "done" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_SNOOZE") { nextalarmstate = "snooze" }</actioncontainer>
<conditioncontainer id="t126" x="-2660.0" y="-3342.5">Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen</conditioncontainer>
<conditioncontainer id="t127" x="-2520.0" y="-3342.5">Unterbrechnungen-Modus: Keine / Nicht unterbrechen</conditioncontainer>
<conditioncontainer id="t128" x="-2380.0" y="-3342.5">Unterbrechnungen-Modus: Nur Wecker (Android 6+)</conditioncontainer>
<conditioncontainer id="t129" x="-2590.0" y="-2782.5">Expression: trigger == "Unterbrechnungen-Modus: Alle / Immer unterbrechen" or trigger == "Unterbrechnungen-Modus: Keine / Nicht unterbrechen" or trigger == "Unterbrechnungen-Modus: Nur Wecker (Android 6+)" or trigger == "Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen"</conditioncontainer>
<conditioncontainer id="t130" x="-2800.0" y="-3342.5">Unterbrechnungen-Modus: Alle / Immer unterbrechen</conditioncontainer>
<actioncontainer id="t131" x="-2520.0" y="-3552.5">Script: dndValue = "never"</actioncontainer>
<actioncontainer id="t132" x="-2590.0" y="-3832.5">Do Not Disturb State</actioncontainer>
<actioncontainer id="t133" x="-2800.0" y="-3552.5">Script: dndValue = "always"</actioncontainer>
<actioncontainer id="t134" x="-2380.0" y="-3552.5">Script: dndValue = "alarmClockOnly"</actioncontainer>
<actioncontainer id="t135" x="-2660.0" y="-3552.5">Script: dndValue = "onlyImportant"</actioncontainer>
<conditioncontainer id="t136" x="1015.0" y="-2082.5">Expression: global_apssid != "usb-ethernet"</conditioncontainer>
<conditioncontainer id="t137" x="1015.0" y="-1767.5">WLAN Verbunden: {global_apssid}</conditioncontainer>
<connection from="t1" to="t3" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t1" to="t4" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t2" to="t33" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t2" to="t73" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t3" to="t103" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t4" to="t103" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t5" to="t66" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t6" to="t66" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t7" to="t5" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t7" to="t6" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t8" to="t85" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t8" to="t11" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t8" to="t11" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t9" to="t60" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t10" to="t60" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t11" to="t60" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t12" to="t60" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t13" to="t64" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t14" to="t7" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t15" to="t67" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t16" to="t118" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t75" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t18" to="t37" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t19" to="t61" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t20" to="t21" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t20" to="t22" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t21" to="t23" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t22" to="t23" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t23" to="t28" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t23" to="t29" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t24" to="t69" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t25" to="t69" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t26" to="t108" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t27" to="t108" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t28" to="t68" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t29" to="t68" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t30" to="t20" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t31" to="t73" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t32" to="t31" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t32" to="t2" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t34" to="t61" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t35" to="t38" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t36" to="t37" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t37" to="t34" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t37" to="t19" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t37" to="t39" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t38" to="t18" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t38" to="t36" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t39" to="t40" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t40" to="t41" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<conditioncontainer id="t2" x="1155.0" y="-3132.5">Expression: trigger == "Daydream Status: Gestartet"</conditioncontainer>
<actioncontainer id="t3" x="-210.0" y="-2082.5">Script: setCommandFlow_state = "inaktiv"</actioncontainer>
<actioncontainer id="t4" x="1085.0" y="-3482.5">Script: daydream_state = "on"</actioncontainer>
<actioncontainer id="t5" x="1225.0" y="-3482.5">Script: daydream_state = "off"</actioncontainer>
<actioncontainer id="t6" x="420.0" y="-3587.5">Script: next_alarmday = "{next_alarm,dateformat,c}"</actioncontainer>
<actioncontainer id="t7" x="630.0" y="-3587.5">Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}"</actioncontainer>
<actioncontainer id="t8" x="525.0" y="-3307.5">Initialisiere Variable Nächster Alarm: next_alarm</actioncontainer>
<conditioncontainer id="t9" x="1925.0" y="-2082.5">Expression: getAndroidSDKVersion() &gt;= "19"</conditioncontainer>
<actioncontainer id="t10" x="2275.0" y="-2292.5">Script: runTask = "1"</actioncontainer>
<actioncontainer id="t11" x="2135.0" y="-2292.5">Script: runTask = "0"</actioncontainer>
<actioncontainer id="t12" x="1925.0" y="-2292.5">Script: runTask = "not supported android version"</actioncontainer>
<actioncontainer id="t13" x="1715.0" y="-2327.5">Script: runTask = "null"</actioncontainer>
<conditioncontainer id="t14" x="0.0" y="-2782.5">Expression: trigger == "Systemeinstellung verändert: System volume_ring_speaker"</conditioncontainer>
<conditioncontainer id="t15" x="525.0" y="-2782.5">Expression: trigger == "Systemeinstellung verändert: System next_alarm"</conditioncontainer>
<conditioncontainer id="t16" x="1505.0" y="-2782.5">Expression: trigger == "Systemeinstellung verändert: System screen_brightness"</conditioncontainer>
<actioncontainer id="t17" x="-1225.0" y="-3657.5">Script: airplanemode = "off"</actioncontainer>
<conditioncontainer id="t18" x="-1050.0" y="-3657.5">Expression: airpcount &lt; 11</conditioncontainer>
<actioncontainer id="t19" x="-1540.0" y="-3517.5">Script: keyguard = "unlocked"</actioncontainer>
<actioncontainer id="t20" x="-1540.0" y="-3832.5">Script: screen_state = "off {keyguard}"</actioncontainer>
<conditioncontainer id="t21" x="1855.0" y="-3027.5">Display Orientierung: Portrait</conditioncontainer>
<actioncontainer id="t22" x="1785.0" y="-3272.5">Script: screen_orientation = "portrait"</actioncontainer>
<actioncontainer id="t23" x="1925.0" y="-3272.5">Script: screen_orientation = "landscape"</actioncontainer>
<conditioncontainer id="t24" x="1855.0" y="-3482.5">Display automatisch drehen eingeschaltet</conditioncontainer>
<actioncontainer id="t25" x="2730.0" y="-3482.5">Script: dock_state = "docked"</actioncontainer>
<actioncontainer id="t26" x="2870.0" y="-3482.5">Script: dock_state = "undocked"</actioncontainer>
<actioncontainer id="t27" x="3150.0" y="-3482.5">Script: keyguardSet = "1"</actioncontainer>
<actioncontainer id="t28" x="3290.0" y="-3482.5">Script: keyguardSet = "0"</actioncontainer>
<actioncontainer id="t29" x="1785.0" y="-3657.5">Script: screen_orientation_mode = "auto"</actioncontainer>
<actioncontainer id="t30" x="1925.0" y="-3657.5">Script: screen_orientation_mode = "manual"</actioncontainer>
<conditioncontainer id="t31" x="1855.0" y="-2782.5">Expression: trigger == "Display Orientierung: Landscape" or trigger == "Display Orientierung: Portrait" or trigger == "Display Status: Ein" or trigger == "Display Status: Aus"</conditioncontainer>
<actioncontainer id="t32" x="0.0" y="-2082.5">Script: setCommandFlow_state = "aktiv"</actioncontainer>
<conditioncontainer id="t33" x="-105.0" y="-1907.5">Flow Aktiv: SetCommands</conditioncontainer>
<actioncontainer id="t34" x="-105.0" y="-2257.5">Setze Flow Status: Aktivieren SetCommands</actioncontainer>
<actioncontainer id="t35" x="-1680.0" y="-3832.5">Script: screen_state = "on {keyguard}"</actioncontainer>
<actioncontainer id="t36" x="-1610.0" y="-3097.5">Script: scrcount = 0</actioncontainer>
<actioncontainer id="t37" x="-1680.0" y="-3517.5">Script: keyguard = "locked"</actioncontainer>
<conditioncontainer id="t38" x="-1610.0" y="-3657.5">Display eingeschaltet</conditioncontainer>
<conditioncontainer id="t39" x="-1610.0" y="-3342.5">Keyguard gesperrt</conditioncontainer>
<conditioncontainer id="t40" x="-1855.0" y="-3832.5">Expression: scrcount &lt; 5</conditioncontainer>
<actioncontainer id="t41" x="-1855.0" y="-3657.5">Script: scrcount = scrcount + 1</actioncontainer>
<actioncontainer id="t42" x="-1855.0" y="-3517.5">Pause: 2s (Gerät wach halten)</actioncontainer>
<conditioncontainer id="t43" x="-1855.0" y="-3342.5">Expression: keyguard == "locked"</conditioncontainer>
<conditioncontainer id="t44" x="210.0" y="-2782.5">Expression: trigger == "Systemeinstellung verändert: System volume_music_bt_a2dp" or trigger == "Systemeinstellung verändert: System volume_music_speaker" or trigger == "Systemeinstellung verändert: System volume_music_headphone"</conditioncontainer>
<conditioncontainer id="t45" x="-770.0" y="-3342.5">Musik Aktiv</conditioncontainer>
<conditioncontainer id="t46" x="-455.0" y="-3097.5">Bluetooth eingeschaltet</conditioncontainer>
<actioncontainer id="t47" x="-455.0" y="-3552.5">Script: bluetooth_state = "off"</actioncontainer>
<actioncontainer id="t48" x="-455.0" y="-3342.5">Script: bluetooth_state = "on"</actioncontainer>
<conditioncontainer id="t49" x="-315.0" y="-3097.5">Bluetooth Gerät verbunden: Beliebiges Geräte</conditioncontainer>
<actioncontainer id="t50" x="-315.0" y="-3552.5">Script: connected_devices_names = "null"; connected_devices_addresses = "null"</actioncontainer>
<conditioncontainer id="t51" x="1155.0" y="-2782.5">Expression: trigger == "Daydream Status: Gestartet" or trigger == "Daydream Status: Gestoppt"</conditioncontainer>
<conditioncontainer id="t52" x="3535.0" y="-2782.5">Expression: trigger == "Eingehender Anruf. Status: Klingelt, Nummern: Alle"</conditioncontainer>
<actioncontainer id="t53" x="2170.0" y="-3482.5">Script: notification_text = "Aktiviere Automagic unter Einstellungen -&gt; Benachrichtigungen -&gt; Benachrichtigungszugriff"</actioncontainer>
<conditioncontainer id="t54" x="2310.0" y="-3482.5">Benachrichtigung in Statusbar angezeigt: Automagic</conditioncontainer>
<conditioncontainer id="t55" x="3885.0" y="-3132.5">Expression: getAndroidSDKVersion() &gt;= "19"</conditioncontainer>
<actioncontainer id="t56" x="3745.0" y="-3482.5">Script: notification_text = "Aktiviere Automagic unter Einstellungen -&gt; Benachrichtigungen -&gt; Benachrichtigungszugriff"</actioncontainer>
<actioncontainer id="t57" x="4025.0" y="-3482.5">Script: notification_text = "not supported from your device"</actioncontainer>
<conditioncontainer id="t58" x="3885.0" y="-3482.5">Benachrichtigung in Statusbar angezeigt: WhatsApp</conditioncontainer>
<conditioncontainer id="t59" x="4270.0" y="-2782.5">Expression: trigger == "Genereller Broadcast: wenn org.smblott.intentradio.STATE"</conditioncontainer>
<conditioncontainer id="t60" x="3885.0" y="-2782.5">Expression: trigger == "Benachrichtigung in Statusbar angezeigt: com.whatsapp"</conditioncontainer>
<actioncontainer id="t61" x="1995.0" y="-2537.5">Check run Task</actioncontainer>
<actioncontainer id="t62" x="-1610.0" y="-4042.5">Screen State</actioncontainer>
<actioncontainer id="t63" x="-455.0" y="-3832.5">Bluetooth Status</actioncontainer>
<actioncontainer id="t64" x="-315.0" y="-3832.5">Bluetooth Device Status</actioncontainer>
<actioncontainer id="t65" x="0.0" y="-3832.5">Notification Volume</actioncontainer>
<actioncontainer id="t66" x="210.0" y="-3832.5">Lautstärke / Volume</actioncontainer>
<actioncontainer id="t67" x="525.0" y="-3832.5">Nächster Alarm</actioncontainer>
<actioncontainer id="t68" x="1505.0" y="-3832.5">Screen Brightness</actioncontainer>
<actioncontainer id="t69" x="1855.0" y="-3832.5">Screen Orientation</actioncontainer>
<actioncontainer id="t70" x="2800.0" y="-3832.5">Dock State</actioncontainer>
<actioncontainer id="t71" x="3885.0" y="-3832.5">Incoming WhatsApp Message</actioncontainer>
<actioncontainer id="t72" x="4270.0" y="-3832.5">IntentRadio Status</actioncontainer>
<actioncontainer id="t73" x="-525.0" y="-2432.5">Flowsetversion</actioncontainer>
<actioncontainer id="t74" x="-105.0" y="-2432.5">Flow Status SetCommands</actioncontainer>
<conditioncontainer id="t75" x="-1610.0" y="-2782.5">Expression: trigger == "Display Status: Aus" or trigger == "Display Status: Ein" or udef_trigger == "setLockPin"</conditioncontainer>
<actioncontainer id="t76" x="-1050.0" y="-3517.5">Script: airpcount = airpcount + 1</actioncontainer>
<actioncontainer id="t77" x="-1120.0" y="-3097.5">Script: airpcount = 0</actioncontainer>
<actioncontainer id="t78" x="-1050.0" y="-3342.5">Pause: 2s (Gerät wach halten)</actioncontainer>
<conditioncontainer id="t79" x="-1225.0" y="-3517.5">Expression: global_apssid != "usb-ethernet"</conditioncontainer>
<conditioncontainer id="t80" x="-1225.0" y="-3342.5">WLAN Verbunden: {global_apssid}</conditioncontainer>
<conditioncontainer id="t81" x="2800.0" y="-3132.5">Dock Status: Docked</conditioncontainer>
<conditioncontainer id="t82" x="2310.0" y="-2782.5">Expression: trigger == "Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic" or trigger == "Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic"</conditioncontainer>
<conditioncontainer id="t83" x="2800.0" y="-2782.5">Expression: trigger == "Dock Event: Docked" or trigger == "Dock Event: Undocked"</conditioncontainer>
<conditioncontainer id="t84" x="1995.0" y="-1907.5">Expression: global_activetask != null</conditioncontainer>
<conditioncontainer id="t85" x="-420.0" y="-2782.5">Expression: trigger == "Bluetooth Status: Schaltet aus, Aus" or trigger == "Bluetooth Status: Schaltet ein, Ein"</conditioncontainer>
<conditioncontainer id="t86" x="2205.0" y="-2082.5">App Task läuft: {global_activetask} (neuster)</conditioncontainer>
<actioncontainer id="t87" x="2310.0" y="-3832.5">Automagic State</actioncontainer>
<actioncontainer id="t88" x="2450.0" y="-3482.5">Script: notification_text = "not supported from your device"</actioncontainer>
<conditioncontainer id="t89" x="1015.0" y="157.5">Expression: global_fhemip != null or header_fhemip != null</conditioncontainer>
<actioncontainer id="t90" x="-455.0" y="682.5">Initialisiere Variable Systemeinstellung: volumeMusikBluetooth.2</actioncontainer>
<actioncontainer id="t91" x="-245.0" y="682.5">Initialisiere Variable Systemeinstellung: volumeMusikSpeaker.2</actioncontainer>
<conditioncontainer id="t92" x="-350.0" y="892.5">Bluetooth Gerät verbunden: Beliebiges Geräte (Advanced Audio Distribution)</conditioncontainer>
<actioncontainer id="t93" x="-420.0" y="1102.5">Script: volume = {volumeBT}</actioncontainer>
<actioncontainer id="t94" x="-280.0" y="1102.5">Script: volume = {volumeSP}</actioncontainer>
<actioncontainer id="t95" x="105.0" y="682.5">Initialisiere Variable Systemeinstellung: screenBrightness</actioncontainer>
<actioncontainer id="t96" x="315.0" y="682.5">Initialisiere Variable Systemeinstellung: volumeNotification</actioncontainer>
<conditioncontainer id="t97" x="805.0" y="1207.5">Expression: global_bridgeport == null or global_bridgeport != {header_bport} or global_fhemip == null or global_fhemip != {header_fhemip} or global_fhemdevice == null or global_fhemdevice != {header_fhemdevice} or global_activetask == null or global_activetask != {header_activetask} or global_apssid == null or global_apssid != {header_apssid} or global_deviceport != null or global_deviceport!= {header_dport}</conditioncontainer>
<actioncontainer id="t98" x="1260.0" y="1417.5">Script: androidVersion = "not supported funktion"</actioncontainer>
<actioncontainer id="t99" x="1330.0" y="1662.5">Android Version</actioncontainer>
<conditioncontainer id="t100" x="-1120.0" y="-2782.5">Expression: trigger == "Flugmodus: Aus"</conditioncontainer>
<conditioncontainer id="t101" x="2065.0" y="-1837.5">Expression: package_name == {global_activetask}</conditioncontainer>
<conditioncontainer id="t102" x="1015.0" y="-227.5">Expression: trigger == "App Task Beendet"</conditioncontainer>
<conditioncontainer id="t103" x="3220.0" y="-3132.5">Keyguard mit Sicherheit</conditioncontainer>
<actioncontainer id="t104" x="1155.0" y="-3832.5">Daydream State</actioncontainer>
<conditioncontainer id="t105" x="2310.0" y="-3027.5">Expression: getAndroidSDKVersion() &gt;= "19"</conditioncontainer>
<actioncontainer id="t106" x="1330.0" y="1207.5">Get Android Version</actioncontainer>
<conditioncontainer id="t107" x="3220.0" y="-2782.5">Expression: udef_trigger == "setLockPin"</conditioncontainer>
<actioncontainer id="t108" x="3535.0" y="-3832.5">Incoming Call</actioncontainer>
<actioncontainer id="t109" x="3220.0" y="-3832.5">KeyGuard Set</actioncontainer>
<conditioncontainer id="t110" x="1015.0" y="507.5">Expression: trigger == "HTTP Request: /fhem-amad/deviceInfo/"</conditioncontainer>
<conditioncontainer id="t111" x="4270.0" y="-1592.5">Expression: trigger == "Periodischer Timer: alle 30s" or trigger == "HTTP Request: /fhem-amad/deviceInfo/"</conditioncontainer>
<actioncontainer id="t112" x="4270.0" y="-892.5">Device State</actioncontainer>
<conditioncontainer id="t113" x="525.0" y="682.5">Stromversorgung: Angeschlossen</conditioncontainer>
<conditioncontainer id="t114" x="840.0" y="-2782.5">Expression: trigger == "Akku Ladestand: grösser als 0%"</conditioncontainer>
<actioncontainer id="t115" x="805.0" y="1417.5">Prüfe und setze globale Variablen</actioncontainer>
<conditioncontainer id="t116" x="-770.0" y="-2782.5">Expression: trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" or trigger == "com.amazon.mp3.metachanged"</conditioncontainer>
<actioncontainer id="t117" x="-770.0" y="-3517.5">Script: global_artist = "no player active"; global_track = "no player active"; global_album = "no player active"; global_musicapp = "no player active";</actioncontainer>
<actioncontainer id="t118" x="-1120.0" y="-3832.5">Airplainemode</actioncontainer>
<actioncontainer id="t119" x="-770.0" y="-3832.5">Reading Music Metachanged.2</actioncontainer>
<actioncontainer id="t120" x="-770.0" y="-3097.5">Pause: 3s (Gerät wach halten)</actioncontainer>
<conditioncontainer id="t121" x="-2100.0" y="-2782.5">Expression: trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_ALERT" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DISMISS" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_SNOOZE"</conditioncontainer>
<actioncontainer id="t122" x="-2100.0" y="-3832.5">Next Alarm State</actioncontainer>
<actioncontainer id="t123" x="-2100.0" y="-3517.5">Script: if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_ALERT") { nextalarmstate = "alert" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DISMISS") { nextalarmstate = "dismiss" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE") { nextalarmstate = "done" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_SNOOZE") { nextalarmstate = "snooze" }</actioncontainer>
<conditioncontainer id="t124" x="-2660.0" y="-3342.5">Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen</conditioncontainer>
<conditioncontainer id="t125" x="-2520.0" y="-3342.5">Unterbrechnungen-Modus: Keine / Nicht unterbrechen</conditioncontainer>
<conditioncontainer id="t126" x="-2380.0" y="-3342.5">Unterbrechnungen-Modus: Nur Wecker (Android 6+)</conditioncontainer>
<conditioncontainer id="t127" x="-2590.0" y="-2782.5">Expression: trigger == "Unterbrechnungen-Modus: Alle / Immer unterbrechen" or trigger == "Unterbrechnungen-Modus: Keine / Nicht unterbrechen" or trigger == "Unterbrechnungen-Modus: Nur Wecker (Android 6+)" or trigger == "Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen"</conditioncontainer>
<conditioncontainer id="t128" x="-2800.0" y="-3342.5">Unterbrechnungen-Modus: Alle / Immer unterbrechen</conditioncontainer>
<actioncontainer id="t129" x="-2520.0" y="-3552.5">Script: dndValue = "never"</actioncontainer>
<actioncontainer id="t130" x="-2590.0" y="-3832.5">Do Not Disturb State</actioncontainer>
<actioncontainer id="t131" x="-2800.0" y="-3552.5">Script: dndValue = "always"</actioncontainer>
<actioncontainer id="t132" x="-2380.0" y="-3552.5">Script: dndValue = "alarmClockOnly"</actioncontainer>
<actioncontainer id="t133" x="-2660.0" y="-3552.5">Script: dndValue = "onlyImportant"</actioncontainer>
<actioncontainer id="t134" x="1015.0" y="-1382.5">Script: amad_flowset_version = "2.2.2"</actioncontainer>
<conditioncontainer id="t135" x="1015.0" y="-2082.5">Expression: global_apssid != "usb-ethernet"</conditioncontainer>
<actioncontainer id="t136" x="3885.0" y="-892.5">WLAN Reassoziieren</actioncontainer>
<conditioncontainer id="t137" x="3885.0" y="-1592.5">WLAN verfügbar: {global_apssid}</conditioncontainer>
<conditioncontainer id="t138" x="1015.0" y="-1767.5">WLAN Verbunden: {global_apssid}</conditioncontainer>
<actioncontainer id="t139" x="840.0" y="-3832.5">Stromversorgung und Akkustand</actioncontainer>
<connection from="t1" to="t102" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t2" to="t4" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t2" to="t5" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t3" to="t34" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t3" to="t74" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t4" to="t104" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t5" to="t104" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t6" to="t67" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t7" to="t67" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t8" to="t6" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t8" to="t7" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t9" to="t86" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t9" to="t12" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t9" to="t12" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t10" to="t61" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t11" to="t61" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t12" to="t61" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t13" to="t61" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t14" to="t65" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t15" to="t8" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t16" to="t68" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t118" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t18" to="t76" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t19" to="t38" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t20" to="t62" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t21" to="t22" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t21" to="t23" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t22" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t23" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t24" to="t29" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t24" to="t30" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t25" to="t70" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t26" to="t70" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t27" to="t109" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t28" to="t109" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t29" to="t69" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t30" to="t69" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t31" to="t21" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t32" to="t74" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t33" to="t32" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t33" to="t3" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t35" to="t62" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t36" to="t39" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t37" to="t38" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t38" to="t35" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t38" to="t20" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t38" to="t40" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t39" to="t19" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t39" to="t37" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t40" to="t41" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t41" to="t42" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t42" to="t38" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t43" to="t65" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t44" to="t117" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t44" to="t119" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t45" to="t47" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t45" to="t46" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t46" to="t62" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t47" to="t62" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t48" to="t63" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t48" to="t49" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t49" to="t63" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t50" to="t1" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t51" to="t107" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t52" to="t86" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t53" to="t52" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t53" to="t86" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t54" to="t56" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t54" to="t57" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t55" to="t70" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t56" to="t70" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t55" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t70" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t42" to="t43" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t43" to="t39" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t44" to="t66" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t45" to="t117" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t45" to="t119" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t46" to="t48" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t46" to="t47" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t47" to="t63" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t48" to="t63" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t49" to="t64" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t49" to="t50" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t50" to="t64" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t51" to="t2" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t52" to="t108" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t53" to="t87" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t54" to="t53" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t54" to="t87" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t55" to="t57" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t55" to="t58" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t56" to="t71" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t71" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t58" to="t56" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t58" to="t71" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t59" to="t54" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t74" to="t35" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t75" to="t77" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t59" to="t72" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t60" to="t55" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t75" to="t36" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t76" to="t78" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t77" to="t78" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t78" to="t79" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t78" to="t16" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t79" to="t16" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t77" to="t79" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t78" to="t79" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t79" to="t80" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t79" to="t17" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t80" to="t24" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t80" to="t25" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t81" to="t104" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t82" to="t80" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t83" to="t12" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t83" to="t8" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t84" to="t45" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t85" to="t9" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t85" to="t10" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t87" to="t86" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t88" to="t136" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t88" to="t109" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t89" to="t91" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t90" to="t91" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t91" to="t92" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t91" to="t93" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t92" to="t65" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t93" to="t65" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t94" to="t67" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t95" to="t64" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t96" to="t115" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t97" to="t98" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t99" to="t76" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t100" to="t83" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t101" to="t88" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t101" to="t99" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t101" to="t100" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t102" to="t26" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t102" to="t27" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t104" to="t53" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t104" to="t87" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t104" to="t87" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t105" to="t97" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t105" to="t98" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t106" to="t102" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t105" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t95" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t7" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t94" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t90" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t89" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t45" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t20" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t104" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t112" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t48" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t50" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t80" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t44" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t102" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t76" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t35" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t109" to="t96" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t111" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t112" to="t114" type="TRUE" sourcePosition="SOUTH" targetPosition="SOUTH" />
<connection from="t112" to="t114" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t113" to="t114" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t80" to="t17" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t80" to="t18" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t81" to="t25" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t81" to="t26" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t82" to="t105" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t83" to="t81" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t84" to="t13" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t84" to="t9" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t85" to="t46" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t86" to="t10" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t86" to="t11" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t88" to="t87" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t89" to="t135" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t89" to="t110" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t90" to="t92" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t91" to="t92" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t92" to="t93" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t92" to="t94" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t93" to="t66" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t94" to="t66" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t95" to="t68" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t96" to="t65" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t97" to="t115" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t98" to="t99" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t100" to="t77" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t101" to="t84" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t102" to="t89" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t102" to="t100" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t102" to="t101" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t103" to="t27" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t103" to="t28" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t105" to="t54" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t105" to="t88" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t105" to="t88" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t106" to="t98" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t106" to="t99" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t107" to="t103" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t106" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t96" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t8" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t95" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t91" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t90" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t46" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t21" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t105" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t113" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t49" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t51" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t81" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t45" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t103" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t77" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t36" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t110" to="t97" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t111" to="t112" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t113" to="t139" type="TRUE" sourcePosition="SOUTH" targetPosition="SOUTH" />
<connection from="t113" to="t139" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t114" to="t139" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t116" to="t120" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t117" to="t119" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t120" to="t44" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t121" to="t72" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t122" to="t101" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t123" to="t125" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t125" to="t124" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t126" to="t135" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t127" to="t131" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t128" to="t134" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t129" to="t130" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t129" to="t126" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t129" to="t127" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t129" to="t128" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t130" to="t133" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t131" to="t132" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t133" to="t132" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t134" to="t132" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t132" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t137" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t83" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t32" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t121" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t123" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t74" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t99" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t116" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t84" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t13" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t43" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t14" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t113" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t50" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t15" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t30" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t81" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t82" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t106" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t51" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t59" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t58" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t136" to="t129" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t14" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t43" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t15" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t13" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t74" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t84" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t32" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t81" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t113" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t83" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t30" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t50" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t82" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t116" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t106" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t48" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t51" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t121" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t59" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t123" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t58" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t110" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t129" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t120" to="t45" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t121" to="t123" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t123" to="t122" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t124" to="t133" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t125" to="t129" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t126" to="t132" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t127" to="t128" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t127" to="t124" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t127" to="t125" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t127" to="t126" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t128" to="t131" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t129" to="t130" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t131" to="t130" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t132" to="t130" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t133" to="t130" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t134" to="t73" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t138" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t84" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t33" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t134" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t121" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t75" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t100" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t116" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t85" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t14" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t44" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t15" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t114" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t51" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t16" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t31" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t82" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t83" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t107" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t52" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t60" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t59" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t135" to="t127" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t137" to="t136" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t15" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t44" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t16" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t14" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t75" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t85" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t33" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t82" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t114" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t84" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t31" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t51" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t83" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t116" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t107" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t49" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t52" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t134" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t60" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t121" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t59" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t111" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t127" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t138" to="t137" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
</flow>
<flow type="flow">
<name>MultimediaControl</name>
<group>AMAD2 Info/Control Flowset v2.2.1</group>
<group>AMAD2 Info/Control Flowset v2.2.2</group>
<enabled>true</enabled>
<executionPolicy>PARALLEL</executionPolicy>
<triggercontainer id="t1" x="0.0" y="-1032.5">
@ -3280,7 +3293,7 @@ FHEMCMD: setreading</customHTTPHeaders>
</flow>
<flow type="flow">
<name>SetCommands</name>
<group>AMAD2 Info/Control Flowset v2.2.1</group>
<group>AMAD2 Info/Control Flowset v2.2.2</group>
<enabled>true</enabled>
<executionPolicy>QUEUE</executionPolicy>
<emergencyStopCount>900</emergencyStopCount>
@ -3571,7 +3584,7 @@ FHEMCMD: setreading</customHTTPHeaders>
</flow>
<flow type="flow">
<name>Update AMAD Flowset</name>
<group>AMAD2 Info/Control Flowset v2.2.1</group>
<group>AMAD2 Info/Control Flowset v2.2.2</group>
<enabled>true</enabled>
<executionPolicy>PARALLEL</executionPolicy>
<triggercontainer id="t1" x="420.0" y="-682.5">
@ -3619,7 +3632,7 @@ FHEMCMD: setreading</customHTTPHeaders>
</flow>
<flow type="flow">
<name>VoiceControl</name>
<group>AMAD2 Info/Control Flowset v2.2.1</group>
<group>AMAD2 Info/Control Flowset v2.2.2</group>
<enabled>true</enabled>
<executionPolicy>QUEUE</executionPolicy>
<emergencyStopCount>60</emergencyStopCount>