Dokumentation angepasst, Bildschirmausrichtung im Flow SetCommand verbessert, im Flow Informations wurde die Bedingung -Benachrichtigung in Statusbar- mit Fehlerabfrage versehen

This commit is contained in:
Marko Oldenburg
2015-08-28 23:20:03 +02:00
parent 51d40e12c0
commit a3e2ca5106
2 changed files with 260 additions and 224 deletions

View File

@ -33,7 +33,7 @@ use Time::HiRes qw(gettimeofday);
use HttpUtils; use HttpUtils;
my $version = "0.5.2"; my $version = "0.5.3";
@ -173,7 +173,7 @@ sub AMAD_Set($$@)
$list .= "mediaPlayer:play,stop,next,back " if (AttrVal("$name","fhemServerIP","none") ne "none"); $list .= "mediaPlayer:play,stop,next,back " if (AttrVal("$name","fhemServerIP","none") ne "none");
$list .= "screenBrightness:slider,0,1,255 " if (AttrVal("$name","setScreenBrightness","0") eq "1"); $list .= "screenBrightness:slider,0,1,255 " if (AttrVal("$name","setScreenBrightness","0") eq "1");
$list .= "screen:on,off "; $list .= "screen:on,off ";
$list .= "screenOrientation:landscape,portrait,default " if (AttrVal("$name","setScreenOrientation","0") eq "1"); $list .= "screenOrientation:auto,landscape,portrait " if (AttrVal("$name","setScreenOrientation","0") eq "1");
$list .= "screenFullscreen:on,off " if (AttrVal("$name","setFullscreen","0") eq "1"); $list .= "screenFullscreen:on,off " if (AttrVal("$name","setFullscreen","0") eq "1");
$list .= "openURL "; $list .= "openURL ";
$list .= "openApp:$apps " if (AttrVal("$name","setOpenApp","none") ne "none"); $list .= "openApp:$apps " if (AttrVal("$name","setOpenApp","none") ne "none");
@ -431,8 +431,8 @@ sub AMAD_SelectSetCmd($$@)
my $url = "http://" . $host . ":" . $port . "/fhem-amad/setCommands/setScreenFullscreen?fullscreen=$mod"; my $url = "http://" . $host . ":" . $port . "/fhem-amad/setCommands/setScreenFullscreen?fullscreen=$mod";
AMAD_GetUpdateLocal($hash); readingsSingleUpdate ($hash,$cmd,$mod,1);
Log3 $name, 4, "AMAD ($name) - Starte Update GetUpdateLocal";
return AMAD_HTTP_POST ($hash,$url); return AMAD_HTTP_POST ($hash,$url);
} }
@ -504,37 +504,43 @@ sub AMAD_SelectSetCmd($$@)
Die AndroidAPP Automagic (welche nicht von mir stammt und 2.90Euro kostet) funktioniert wie Tasker, ist aber bei weitem User freundlicher. Die AndroidAPP Automagic (welche nicht von mir stammt und 2.90Euro kostet) funktioniert wie Tasker, ist aber bei weitem User freundlicher.
Im Auslieferiungszustand werden folgende Zustände dargestellt: Im Auslieferiungszustand werden folgende Zustände dargestellt:
<ul> <ul>
<br> <li>Zustand von Automagic auf dem Ger&auml;t</li>
<li>Standardlautst&auml;rke</li> <li>aktuell abgespieltes Musikalbum des verwendeten Mediaplayers</li>
<li>aktuell abgespielter Musikinterpret des verwendeten Mediaplayers</li>
<li>aktuell abgespielter Musiktitel des verwendeten Mediaplayers</li>
<li>Status des Androidger&auml;tes - Online/Offline</li> <li>Status des Androidger&auml;tes - Online/Offline</li>
<li>n&auml;chste Alarmzeit</li>
<li>n&auml;chster Alarmtag</li> <li>n&auml;chster Alarmtag</li>
<li>Ladestatus - Netztei angeschlossen / nicht angeschlossen</li> <li>n&auml;chste Alarmzeit</li>
<li>Batteriestatus in %</li> <li>Batteriestatus in %</li>
<li>Bildschirmhelligkeit</li> <li>Ladestatus - Netztei angeschlossen / nicht angeschlossen</li>
<li>Bildschirnstatus An/Aus</li> <li>Bildschirnstatus An/Aus</li>
<li>Bildschirmhelligkeit</li>
<li>Vollbildmodus An/Aus</li>
<li>Bildschirmausrichtung Auto/Landscape/Portrait</li>
<li>Standardlautst&auml;rke</li>
<li>Media Lautst&auml;rke des Lautsprechers am Ger&auml;t</li> <li>Media Lautst&auml;rke des Lautsprechers am Ger&auml;t</li>
<li>Media Lautst&auml;rke des Bluetooth Lautsprechers</li> <li>Media Lautst&auml;rke des Bluetooth Lautsprechers</li>
<li>Zustand von Automagic auf dem Ger&auml;t</li>
</ul> </ul>
<br><br>
Als Extra k&ouml;nnen noch aktueller Titel, Interpret und Album des verwendeten Mediaplayers angezeigt werden.
<br> <br>
Mit etwas Einarbeitung k&ouml;nnen jegliche Informationen welche Automagic bereit stellt in FHEM angezeigt werden. Hierzu bedarf es lediglich Mit etwas Einarbeitung k&ouml;nnen jegliche Informationen welche Automagic bereit stellt in FHEM angezeigt werden. Hierzu bedarf es lediglich
einer kleinen Anpassung des "Information" Flows einer kleinen Anpassung des "Information" Flows
<br> <br><br>
<br>
Das Modul gibt Dir auch die M&ouml;glichkeit Deine Androidger&auml;te zu steuern. So k&ouml;nnen folgende Aktionen durchgef&uuml;hrt werden. Das Modul gibt Dir auch die M&ouml;glichkeit Deine Androidger&auml;te zu steuern. So k&ouml;nnen folgende Aktionen durchgef&uuml;hrt werden.
<ul> <ul>
<br> <li>Status des Ger&auml;tes (Online,Offline)</li>
<li>Medienlautst&auml;rke regeln</li>
<li>n&auml;chste Alarmzeit setzen</li>
<li>Bildschirmhelligkeit einstellen</li>
<li>Bildschirm An/Aus machen</li>
<li>Mediaplayer steuern (Play, Stop, n&auml;chster Titel, vorheriger Titel)</li> <li>Mediaplayer steuern (Play, Stop, n&auml;chster Titel, vorheriger Titel)</li>
<li>n&auml;chste Alarmzeit setzen</li>
<li>eine App auf dem Ger&auml;t &ouml;ffnen</li>
<li>eine URL im Browser &ouml;ffnen</li> <li>eine URL im Browser &ouml;ffnen</li>
<li>Bildschirm An/Aus machen</li>
<li>Bildschirmhelligkeit einstellen</li>
<li>Vollbildmodus einschalten</li>
<li>eine Nachricht senden welche am Bildschirm angezeigt wird</li> <li>eine Nachricht senden welche am Bildschirm angezeigt wird</li>
<li>Bildschirmausrichtung einstellen (Auto,Landscape,Portrait)</li>
<li>neuen Statusreport des Ger&auml;tes anfordern</li>
<li>Systembefehle setzen (Reboot)</li>
<li>eine Nachricht senden welche <b>angesagt</b> wird (TTS)</li> <li>eine Nachricht senden welche <b>angesagt</b> wird (TTS)</li>
<li>Medienlautst&auml;rke regeln</li>
</ul> </ul>
<br><br> <br><br>
F&uuml;r all diese Aktionen und Informationen wird auf dem Androidger&auml;t Automagic und ein so genannter Flow ben&ouml;tigt. Die App m&uuml;&szlig;t F&uuml;r all diese Aktionen und Informationen wird auf dem Androidger&auml;t Automagic und ein so genannter Flow ben&ouml;tigt. Die App m&uuml;&szlig;t
@ -542,14 +548,13 @@ sub AMAD_SelectSetCmd($$@)
<br><br> <br><br>
<b>Wie genau verwendet man nun AMAD?</b> <b>Wie genau verwendet man nun AMAD?</b>
<ul> <ul>
<br>
<li>Installiert Euch die App "Automagic Premium" aus dem App Store oder die Testversion von <a href="https://automagic4android.com/de/testversion">hier</a></li> <li>Installiert Euch die App "Automagic Premium" aus dem App Store oder die Testversion von <a href="https://automagic4android.com/de/testversion">hier</a></li>
<li>ladet Euch das AMAD Modul und die Flowfiles von <a href="https://github.com/LeonGaultier/fhem-AMAD">GitHub</a> runter</li> <li>ladet Euch das AMAD Modul und die Flowfiles von <a href="https://github.com/LeonGaultier/fhem-AMAD">GitHub</a> runter</li>
<li>installiert die zwei Flows und aktiviert erstmal nur den "Information" Flow, eventuell bei den <a href="https://github.com/LeonGaultier/fhem-AMAD/tree/master/Flow_Updates"> <li>installiert die zwei Flows und aktiviert erstmal nur den "Information" Flow, eventuell bei den <a href="https://github.com/LeonGaultier/fhem-AMAD/tree/master/Flow_Updates">
FlowUpdates</a> mal schauen ob es was neueres gibt und den entsprechenden Flow auf dem Ger&auml;t l&ouml;schen und den neuen Flow von GitHub installieren</li> FlowUpdates</a> mal schauen ob es was neueres gibt und den entsprechenden Flow auf dem Ger&auml;t l&ouml;schen und den neuen Flow von GitHub installieren</li>
<li>kopiert die Moduldatei 74_AMAD.pm nach $FHEMPATH/FHEM. Geht auf die FHEM Frontendseite und gebt dort in der Kommandozeile <i>reload 74_AMAD.pm</i> ein</li> <li>kopiert die Moduldatei 74_AMAD.pm nach $FHEMPATH/FHEM. Geht auf die FHEM Frontendseite und gebt dort in der Kommandozeile <i>reload 74_AMAD.pm</i> ein</li>
</ul> </ul>
<br><br> <br>
Nun m&uuml;sst Ihr nur noch ein Device in FHEM anlegen. Nun m&uuml;sst Ihr nur noch ein Device in FHEM anlegen.
<br><br> <br><br>
<a name="AMADdefine"></a> <a name="AMADdefine"></a>
@ -573,56 +578,64 @@ sub AMAD_SelectSetCmd($$@)
<br><br> <br><br>
<a name="AMADreadings"></a> <a name="AMADreadings"></a>
<b>Readings</b> <b>Readings</b>
<ul><br> <ul>
<li>defaultVolume - Lautst&auml;rkewert welcher &uuml;ber "set defaultVolume" gesetzt wurde.</li> <li>automagicState - Statusmeldungen von der AutomagicApp</li>
<li>currentMusicAlbum - </li>
<li>currentMusicArtist - </li>
<li>currentMusicTrack - </li>
<li>deviceState - Status des Androidger&auml;tes, muss selbst mit setreading gesetzt werden z.B. &uuml;ber die Anwesenheitskontrolle.<br> <li>deviceState - Status des Androidger&auml;tes, muss selbst mit setreading gesetzt werden z.B. &uuml;ber die Anwesenheitskontrolle.<br>
Ist Offline gesetzt, wird der Intervall zum Informationsabruf aus gesetzt.</li> Ist Offline gesetzt, wird der Intervall zum Informationsabruf aus gesetzt.</li>
<li>nextAlarmDay - aktiver Alarmtag</li> <li>nextAlarmDay - aktiver Alarmtag</li>
<li>nextAlarmTime - aktive Alarmzeit</li> <li>nextAlarmTime - aktive Alarmzeit</li>
<li>powerLevel - Status der Batterie in %</li> <li>powerLevel - Status der Batterie in %</li>
<li>powerPlugged - Netzteil angeschlossen? 0=NEIN, 2=JA</li> <li>powerPlugged - Netzteil angeschlossen? 0=NEIN, 2=JA</li>
<li>screen - Bildschirm An oderAus</li>
<li>screenBrightness - Bildschirmhelligkeit von 0-255</li> <li>screenBrightness - Bildschirmhelligkeit von 0-255</li>
<li>screenFullscreen - Vollbildmodus (On,Off)</li>
<li>screenOrientation - Bildschirmausrichtung (Auto,Landscape,Portrait)</li>
<li>volume - Lautst&auml;rkewert welcher &uuml;ber "set volume" gesetzt wurde.</li>
<li>volumeMusikBluetooth - Media Lautst&auml;rke von angeschlossenden Bluetooth Lautsprechern</li> <li>volumeMusikBluetooth - Media Lautst&auml;rke von angeschlossenden Bluetooth Lautsprechern</li>
<li>volumeMusikSpeaker - Media Lautst&auml;rke der internen Lautsprecher</li> <li>volumeMusikSpeaker - Media Lautst&auml;rke der internen Lautsprecher</li>
<li>screen - Bildschirm An oderAus</li>
<li>automagicState - Statusmeldungen von der AutomagicApp</li>
<br> <br>
Die Readings volumeMusikBluetooth und volumeMusikSpeaker spiegeln die jeweilige Medialautst&auml;rke der angeschlossenden Bluetoothlautsprechern oder der internen Lautsprecher wieder.<br> Die Readings volumeMusikBluetooth und volumeMusikSpeaker spiegeln die jeweilige Medialautst&auml;rke der angeschlossenden Bluetoothlautsprechern oder der internen Lautsprecher wieder.<br>
Sofern man die jeweiligen Lautst&auml;rken ausschlie&szlig;lich &uuml;ber den Set Befehl setzt, wird eine der beiden immer mit dem defaultVolume Reading &uuml;ber ein stimmen.<br><br> Sofern man die jeweiligen Lautst&auml;rken ausschlie&szlig;lich &uuml;ber den Set Befehl setzt, wird eine der beiden immer mit dem "volume" Reading &uuml;ber ein stimmen.<br><br>
Die Readings "currentMusicAlbum", "currentMusicArtist", "currentMusicTrack" werden nicht vom Modul AMAD gesteuert, sondern ausschlie&szlig;lich vom Automagic Flow. Hierf&uuml;r ist es notwendig
das der Flow entsprechend Deiner Netzwerkumgebung und Deines Androidger&auml;tes angepasst wird.<br>
&Ouml;ffne den Flow SetCommands und folge dem Strang welcher ganz ganz links aussen lang geht. Dieser trifft auf eine Raute. Die Raute symbolisiert eine Bedingung. Es wird gefragt,
ob ein bestimmtes WLan Netz vorhanden ist. Tragt bitte hier Euren Router oder Access Point ein. Als n&auml;chstes folgt Ihr dem Strang weiter und trifft auf 3 Rechtecke.<br>
In jedem der 3 Rechtecke ist ein Befehl zum setzen eines der drei Readings eingetragen. Ihr m&uuml;sst lediglich in allen drein die IP Eures FHEM Servers eintragen, sowie den korrekte
DeviceNamen welchen Ihr in FHEM f&uuml;r dieses Androidger&auml;t angegeben habt.<br><br>
Das Reading automagicState muss explizit aktiviert werden. Hierf&uuml;r geht Ihr in den Flow Information und dann ganz nach rechts. Dort steht eine einsame Raute (Bedingung) ohne Anbuindung
an das Rechteck mit der Pause. Dr&uuml;ckt auf das Rechteck mit der Pause und zieht das Plus bis runter auf die Raute. Nun habt Ihr eine Verbindung. Ab der Android 5.x Version setzt Ihr
unter Einstellungen:Ton&Benachrichtigungen:Benachrichtigungszugriff ein Haken bei Automagic. Leider kann ich nicht sagen wie es sich bei Versionen der 4.xer Reihe verh&auml;lt.
</ul> </ul>
<br><br> <br><br>
<a name="AMADset"></a> <a name="AMADset"></a>
<b>Set</b> <b>Set</b>
<ul><br> <ul>
<li>defaultVolume - setzt die Medialautst&auml;rke. Entweder die internen Lautsprecher oder sofern angeschlossen die Bluetoothlautsprecher</li>
<li>deviceState - setzt den Device Status Online/Offline. Siehe Readings</li> <li>deviceState - setzt den Device Status Online/Offline. Siehe Readings</li>
<li>mediaPlayer - steuert den Standard Mediaplayer. play, stop, Titel z&uuml;r&uuml;ck, Titel vor.</li> <li>mediaPlayer - steuert den Standard Mediaplayer. play, stop, Titel z&uuml;r&uuml;ck, Titel vor.</li>
<li>nextAlarmTime - setzt die Alarmzeit. Geht aber nur innerhalb der n&auml;chsten 24Std.</li> <li>nextAlarmTime - setzt die Alarmzeit. Geht aber nur innerhalb der n&auml;chsten 24Std.</li>
<li>openURL - &ouml;ffnet eine URL im Standardbrowser</li> <li>openURL - &ouml;ffnet eine URL im Standardbrowser</li>
<li>screen - setzt den Bildschirm auf AN oder AUS mit Sperre</li> <li>screen - setzt den Bildschirm on/off mit Sperre</li>
<li>screenBrightness - setzt die Bildschirmhelligkeit, von 0-255</li>
<li>screenMsg - versendet eine Bildschirmnachricht</li> <li>screenMsg - versendet eine Bildschirmnachricht</li>
<li>statusRequest - Fordert einen neuen Statusreport beim Device an</li>
<li>ttsMsg - versendet eine Nachricht welche als Sprachnachricht ausgegeben wird</li> <li>ttsMsg - versendet eine Nachricht welche als Sprachnachricht ausgegeben wird</li>
<br> <li>volume - setzt die Medialautst&auml;rke. Entweder die internen Lautsprecher oder sofern angeschlossen die Bluetoothlautsprecher</li>
</ul>
<br>
<b>Set abh&auml;ngig von gesetzten Attributen</b>
<ul>
<li>mediaPlayer - steuert den Standard Mediaplayer. play, stop, Titel z&uuml;r&uuml;ck, Titel vor. <b>Attribut fhemServerIP</b></li>
<li>openApp - &ouml;ffnet eine ausgew&auml;hlte App. <b>Attribut setOpenApp</b></li>
<li>screenBrightness - setzt die Bildschirmhelligkeit, von 0-255 <b>Attribut setScreenBrightness</b></li>
Wenn Ihr das "set screenBrightness" verwenden wollt, muss eine kleine Anpassung im Flow SetCommand vorgenommen werden. &Ouml;ffnet die Aktion (eines der Vierecke ganz ganz unten) Wenn Ihr das "set screenBrightness" verwenden wollt, muss eine kleine Anpassung im Flow SetCommand vorgenommen werden. &Ouml;ffnet die Aktion (eines der Vierecke ganz ganz unten)
SetzeSystemeinstellung:System und macht einen Haken bei "Ich habe die Einstellungen &uuml;berpr&uuml;ft, ich weiss was ich tue". SetzeSystemeinstellung:System und macht einen Haken bei "Ich habe die Einstellungen &uuml;berpr&uuml;ft, ich weiss was ich tue".
<li>screenFullscreen - Schaltet den Vollbildmodus on/off. <b>Attribut setFullscreen</b></li>
<li>screenOrientation - Schaltet die Bildschirmausrichtung Auto/Landscape/Portait. <b>Attribut setScreenOrientation</b></li>
<li>system - setzt Systembefehle ab (nur bei gerootetet Ger&auml;en). Reboot <b>Attribut root</b></li>
Um openApp verwenden zu k&ouml;nnen, muss als Attribut ein, oder durch Komma getrennt, mehrere App Namen gesetzt werden. Der App Name ist frei w&auml;hlbar und nur zur Wiedererkennung notwendig.
Der selbe App Name mu&szlig; im Flow SetCommands auf der linken Seite unterhalb der Raute Expression:"openApp" in einen der 5 Str&auml;nge (eine App pro Strang) in beide Rauten eingetragen werden. Danach wird
in das
Viereck die App ausgew&auml;lt welche durch den Attribut App Namen gestartet werden soll.
</ul> </ul>
<br><br> <br><br>
<a name="AMADstate"></a> <a name="AMADstate"></a>
<b>STATE</b> <b>STATE</b>
<ul><br> <ul>
Es gibt drei STATE Zust&auml;nde. <li>initialized - Ist der Status kurz nach einem define..</li>
<li>initialized - Ist der Status kurz nach einem define, ein Set Befehl ist hier noch nicht m&ouml;glich.</li> <li>activ - Das Modul ist im aktiven Status.</li>
<li>activ - das Modul ist im aktiven Status und "Set Befehle" k&ouml;nnen gesetzt werden.</li>
</ul> </ul>
<br><br><br> <br><br><br>
<u><b>Anwendungsbeispiele:</b></u> <u><b>Anwendungsbeispiele:</b></u>

View File

@ -45,18 +45,6 @@ global_album = getString("album");</extras>
<packageNameList></packageNameList> <packageNameList></packageNameList>
<checkMostRecentAppTaskOnly>true</checkMostRecentAppTaskOnly> <checkMostRecentAppTaskOnly>true</checkMostRecentAppTaskOnly>
</condition> </condition>
<condition type="app_task_running">
<useDefaultName>false</useDefaultName>
<name>App Task läuft: App1 (neuster)</name>
<packageNameList>com.google.android.music</packageNameList>
<checkMostRecentAppTaskOnly>true</checkMostRecentAppTaskOnly>
</condition>
<condition type="app_task_running">
<useDefaultName>false</useDefaultName>
<name>App Task läuft: App2 (neuster)</name>
<packageNameList>tunein.player</packageNameList>
<checkMostRecentAppTaskOnly>true</checkMostRecentAppTaskOnly>
</condition>
<condition type="app_task_running"> <condition type="app_task_running">
<useDefaultName>false</useDefaultName> <useDefaultName>false</useDefaultName>
<name>App Task läuft: App4 (neuster)</name> <name>App Task läuft: App4 (neuster)</name>
@ -69,6 +57,18 @@ global_album = getString("album");</extras>
<packageNameList></packageNameList> <packageNameList></packageNameList>
<checkMostRecentAppTaskOnly>true</checkMostRecentAppTaskOnly> <checkMostRecentAppTaskOnly>true</checkMostRecentAppTaskOnly>
</condition> </condition>
<condition type="app_task_running">
<useDefaultName>false</useDefaultName>
<name>App Task läuft: gplay (neuster)</name>
<packageNameList>com.google.android.music</packageNameList>
<checkMostRecentAppTaskOnly>true</checkMostRecentAppTaskOnly>
</condition>
<condition type="app_task_running">
<useDefaultName>false</useDefaultName>
<name>App Task läuft: tuneinradio (neuster)</name>
<packageNameList>tunein.player</packageNameList>
<checkMostRecentAppTaskOnly>true</checkMostRecentAppTaskOnly>
</condition>
<condition type="notification_status_bar_displayed"> <condition type="notification_status_bar_displayed">
<useDefaultName>false</useDefaultName> <useDefaultName>false</useDefaultName>
<name>Benachrichtigung in Statusbar angezeigt: Automagic</name> <name>Benachrichtigung in Statusbar angezeigt: Automagic</name>
@ -92,16 +92,6 @@ global_album = getString("album");</extras>
<name>Display Orientierung: Portrait</name> <name>Display Orientierung: Portrait</name>
<portrait>true</portrait> <portrait>true</portrait>
</condition> </condition>
<condition type="expression">
<useDefaultName>false</useDefaultName>
<name>Expression: App1</name>
<expression>param_app == "gplay"</expression>
</condition>
<condition type="expression">
<useDefaultName>false</useDefaultName>
<name>Expression: App2</name>
<expression>param_app == "tuneinradio"</expression>
</condition>
<condition type="expression"> <condition type="expression">
<useDefaultName>false</useDefaultName> <useDefaultName>false</useDefaultName>
<name>Expression: App3</name> <name>Expression: App3</name>
@ -127,6 +117,11 @@ global_album = getString("album");</extras>
<name>Expression: global_fhemip == "null"</name> <name>Expression: global_fhemip == "null"</name>
<expression>global_fhemip == "null"</expression> <expression>global_fhemip == "null"</expression>
</condition> </condition>
<condition type="expression">
<useDefaultName>false</useDefaultName>
<name>Expression: gplay</name>
<expression>param_app == "gplay"</expression>
</condition>
<condition type="expression"> <condition type="expression">
<useDefaultName>false</useDefaultName> <useDefaultName>false</useDefaultName>
<name>Expression: mediaPlayer"</name> <name>Expression: mediaPlayer"</name>
@ -174,8 +169,8 @@ global_album = getString("album");</extras>
</condition> </condition>
<condition type="expression"> <condition type="expression">
<useDefaultName>true</useDefaultName> <useDefaultName>true</useDefaultName>
<name>Expression: param_orientation == "default"</name> <name>Expression: param_orientation == "auto"</name>
<expression>param_orientation == "default"</expression> <expression>param_orientation == "auto"</expression>
</condition> </condition>
<condition type="expression"> <condition type="expression">
<useDefaultName>true</useDefaultName> <useDefaultName>true</useDefaultName>
@ -252,6 +247,11 @@ global_album = getString("album");</extras>
<name>Expression: ttsMsg"</name> <name>Expression: ttsMsg"</name>
<expression>request_path == "/fhem-amad/setCommands/ttsMsg"</expression> <expression>request_path == "/fhem-amad/setCommands/ttsMsg"</expression>
</condition> </condition>
<condition type="expression">
<useDefaultName>false</useDefaultName>
<name>Expression: tuneinradio</name>
<expression>param_app == "tuneinradio"</expression>
</condition>
<condition type="music_active"> <condition type="music_active">
<useDefaultName>true</useDefaultName> <useDefaultName>true</useDefaultName>
<name>Musik Aktiv</name> <name>Musik Aktiv</name>
@ -346,6 +346,16 @@ global_album = getString("album");</extras>
<xOffset>0</xOffset> <xOffset>0</xOffset>
<yOffset>0</yOffset> <yOffset>0</yOffset>
</action> </action>
<action type="set_auto_rotate_screen_state">
<useDefaultName>true</useDefaultName>
<name>Display automatisch drehen ein-/ausschalten: Aus</name>
<enable>false</enable>
</action>
<action type="set_auto_rotate_screen_state">
<useDefaultName>true</useDefaultName>
<name>Display automatisch drehen ein-/ausschalten: Ein</name>
<enable>true</enable>
</action>
<action type="lock_device"> <action type="lock_device">
<useDefaultName>true</useDefaultName> <useDefaultName>true</useDefaultName>
<name>Gerät sperren</name> <name>Gerät sperren</name>
@ -444,10 +454,10 @@ global_album = getString("album");</extras>
</action> </action>
<action type="script"> <action type="script">
<useDefaultName>true</useDefaultName> <useDefaultName>true</useDefaultName>
<name>Script: global_artist = "no soundplayer aktiv"; global_track = "no soundplayer aktiv"; global_album = "no soundplayer aktiv";</name> <name>Script: global_artist = "no soundplayer activ"; global_track = "no soundplayer activ"; global_album = "no soundplayer activ";</name>
<script>global_artist = "no soundplayer aktiv"; <script>global_artist = "no soundplayer activ";
global_track = "no soundplayer aktiv"; global_track = "no soundplayer activ";
global_album = "no soundplayer aktiv";</script> global_album = "no soundplayer activ";</script>
</action> </action>
<action type="script"> <action type="script">
<useDefaultName>true</useDefaultName> <useDefaultName>true</useDefaultName>
@ -467,8 +477,13 @@ global_fhemdevice = {header_fhemdevice}</script>
</action> </action>
<action type="script"> <action type="script">
<useDefaultName>true</useDefaultName> <useDefaultName>true</useDefaultName>
<name>Script: screen_orientation = "default"</name> <name>Script: notification_text = "no supported from your device"</name>
<script>screen_orientation = "default"</script> <script>notification_text = "no supported from your device"</script>
</action>
<action type="script">
<useDefaultName>true</useDefaultName>
<name>Script: screen_orientation = "auto"</name>
<script>screen_orientation = "auto"</script>
</action> </action>
<action type="script"> <action type="script">
<useDefaultName>true</useDefaultName> <useDefaultName>true</useDefaultName>
@ -569,69 +584,72 @@ global_fhemdevice = {header_fhemdevice}</script>
<actioncontainer id="t1" x="770.0" y="857.5">Script: next_alarmday = "{next_alarm,dateformat,c}"</actioncontainer> <actioncontainer id="t1" x="770.0" y="857.5">Script: next_alarmday = "{next_alarm,dateformat,c}"</actioncontainer>
<conditioncontainer id="t2" x="1120.0" y="612.5">Display eingeschaltet</conditioncontainer> <conditioncontainer id="t2" x="1120.0" y="612.5">Display eingeschaltet</conditioncontainer>
<actioncontainer id="t3" x="1015.0" y="857.5">Script: screen_state = "on"</actioncontainer> <actioncontainer id="t3" x="1015.0" y="857.5">Script: screen_state = "on"</actioncontainer>
<actioncontainer id="t4" x="1680.0" y="857.50024">Script: screen_orientation = "default"</actioncontainer> <actioncontainer id="t4" x="1890.0" y="857.50024">Script: screen_orientation = "portrait"</actioncontainer>
<actioncontainer id="t5" x="1890.0" y="857.50024">Script: screen_orientation = "portrait"</actioncontainer> <actioncontainer id="t5" x="2099.9998" y="857.5">Script: screen_orientation = "landscape"</actioncontainer>
<actioncontainer id="t6" x="2099.9998" y="857.5">Script: screen_orientation = "landscape"</actioncontainer> <conditioncontainer id="t6" x="1995.0002" y="682.4999">Display Orientierung: Portrait</conditioncontainer>
<conditioncontainer id="t7" x="1995.0002" y="682.4999">Display Orientierung: Portrait</conditioncontainer> <actioncontainer id="t7" x="-175.0" y="612.5">Initialisiere Variable Systemeinstellung: volumeMusikBluetooth</actioncontainer>
<actioncontainer id="t8" x="-175.0" y="612.5">Initialisiere Variable Systemeinstellung: volumeMusikBluetooth</actioncontainer> <actioncontainer id="t8" x="70.0" y="612.5">Initialisiere Variable Systemeinstellung: volumeMusikSpeaker</actioncontainer>
<actioncontainer id="t9" x="70.0" y="612.5">Initialisiere Variable Systemeinstellung: volumeMusikSpeaker</actioncontainer> <actioncontainer id="t9" x="350.0" y="612.5">Initialisiere Variable Systemeinstellung: screenBrightness</actioncontainer>
<actioncontainer id="t10" x="350.0" y="612.5">Initialisiere Variable Systemeinstellung: screenBrightness</actioncontainer> <actioncontainer id="t10" x="665.0" y="612.5">Initialisiere Variable Nächster Alarm: next_alarm</actioncontainer>
<actioncontainer id="t11" x="665.0" y="612.5">Initialisiere Variable Nächster Alarm: next_alarm</actioncontainer> <conditioncontainer id="t11" x="1680.0002" y="612.5001">Display automatisch drehen eingeschaltet</conditioncontainer>
<conditioncontainer id="t12" x="1435.0" y="612.5">Benachrichtigung in Statusbar angezeigt: Automagic</conditioncontainer> <actioncontainer id="t12" x="560.0" y="857.5">Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}"</actioncontainer>
<conditioncontainer id="t13" x="1680.0002" y="612.5001">Display automatisch drehen eingeschaltet</conditioncontainer> <conditioncontainer id="t13" x="1015.0" y="-822.50006">Expression: trigger == "com.android.music.metachanged"</conditioncontainer>
<actioncontainer id="t14" x="560.0" y="857.5">Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}"</actioncontainer> <actioncontainer id="t14" x="1225.0" y="857.5">Script: screen_state = "off"</actioncontainer>
<conditioncontainer id="t15" x="1015.0" y="-822.50006">Expression: trigger == "com.android.music.metachanged"</conditioncontainer> <conditioncontainer id="t15" x="1015.0" y="-227.50002">Akku Ladestand: grösser als 0%</conditioncontainer>
<actioncontainer id="t16" x="1225.0" y="857.5">Script: screen_state = "off"</actioncontainer> <actioncontainer id="t16" x="700.0002" y="-122.49997">Script: global_fhemip = {header_fhemip} global_fhemdevice = {header_fhemdevice}</actioncontainer>
<conditioncontainer id="t17" x="1015.0" y="-227.50002">Akku Ladestand: grösser als 0%</conditioncontainer> <conditioncontainer id="t17" x="630.0" y="-367.50003">Expression: global_fhemip == "null"</conditioncontainer>
<actioncontainer id="t18" x="700.0002" y="-122.49997">Script: global_fhemip = {header_fhemip} global_fhemdevice = {header_fhemdevice}</actioncontainer> <conditioncontainer id="t18" x="770.0" y="-367.50003">Expression: global_fhemdevice == "null"</conditioncontainer>
<conditioncontainer id="t19" x="630.0" y="-367.50003">Expression: global_fhemip == "null"</conditioncontainer> <conditioncontainer id="t19" x="-419.99997" y="612.5">Musik Aktiv</conditioncontainer>
<conditioncontainer id="t20" x="770.0" y="-367.50003">Expression: global_fhemdevice == "null"</conditioncontainer> <triggercontainer id="t20" x="1015.0001" y="-1102.4998">
<conditioncontainer id="t21" x="-419.99997" y="612.5">Musik Aktiv</conditioncontainer>
<actioncontainer id="t22" x="-420.00003" y="857.5">Script: global_artist = "no soundplayer aktiv"; global_track = "no soundplayer aktiv"; global_album = "no soundplayer aktiv";</actioncontainer>
<triggercontainer id="t23" x="1015.0001" y="-1102.4998">
<trigger>HTTP Request: /fhem-amad/deviceInfo/, Port 8090</trigger> <trigger>HTTP Request: /fhem-amad/deviceInfo/, Port 8090</trigger>
<trigger>com.android.music.metachanged</trigger> <trigger>com.android.music.metachanged</trigger>
</triggercontainer> </triggercontainer>
<actioncontainer id="t21" x="1015.00024" y="-472.5">Pause: 2s (Gerät wach halten)</actioncontainer>
<actioncontainer id="t22" x="-420.00003" y="857.5">Script: global_artist = "no soundplayer activ"; global_track = "no soundplayer activ"; global_album = "no soundplayer activ";</actioncontainer>
<actioncontainer id="t23" x="1680.0" y="857.50024">Script: screen_orientation = "auto"</actioncontainer>
<actioncontainer id="t24" x="1015.0001" y="1487.5">HTTP Response</actioncontainer> <actioncontainer id="t24" x="1015.0001" y="1487.5">HTTP Response</actioncontainer>
<actioncontainer id="t25" x="1015.00024" y="-472.5">Pause: 2s (Gerät wach halten)</actioncontainer> <conditioncontainer id="t25" x="1435.0" y="612.5">Benachrichtigung in Statusbar angezeigt: Automagic</conditioncontainer>
<actioncontainer id="t26" x="699.99976" y="-717.5">HTTP Request: GET http://{global_fhemip}:8085/fhem?cmd=set%20{global_fhemdevice}%20statusRequest speichern in response</actioncontainer> <actioncontainer id="t26" x="1505.0" y="857.5">Script: notification_text = "no supported from your device"</actioncontainer>
<actioncontainer id="t27" x="699.99976" y="-717.5">HTTP Request: GET http://{global_fhemip}:8085/fhem?cmd=set%20{global_fhemdevice}%20statusRequest speichern in response</actioncontainer>
<connection from="t1" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t1" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t2" to="t3" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t2" to="t3" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t2" to="t16" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t2" to="t14" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t3" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t3" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t4" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t4" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t5" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t5" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t6" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t6" to="t4" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t7" to="t5" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t6" to="t5" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t7" to="t6" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t7" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t8" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t8" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t9" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t9" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t10" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t10" to="t12" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t11" to="t14" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t10" to="t1" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t11" to="t1" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t11" to="t6" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t12" to="t24" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t11" to="t23" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t13" to="t7" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t12" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t13" to="t4" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t13" to="t27" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t13" to="t21" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t13" to="t17" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t13" to="t18" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t14" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t14" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t15" to="t26" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t15" to="t7" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t15" to="t25" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t15" to="t8" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t15" to="t19" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t15" to="t9" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t15" to="t20" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t15" to="t10" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t16" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t15" to="t2" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t8" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t15" to="t25" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t9" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t15" to="t11" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t10" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t15" to="t19" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t11" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t17" to="t16" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t2" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t18" to="t16" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t12" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t19" to="t22" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t13" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t20" to="t13" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t21" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t21" to="t15" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t19" to="t18" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t20" to="t18" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t21" to="t22" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t22" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t22" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t23" to="t15" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t23" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t25" to="t17" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t25" to="t26" type="EXCEPTION" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t25" to="t24" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t26" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
</flow> </flow>
<flow type="flow"> <flow type="flow">
<name>SetCommands</name> <name>SetCommands</name>
@ -650,111 +668,116 @@ global_fhemdevice = {header_fhemdevice}</script>
<actioncontainer id="t9" x="-1225.0" y="892.5">Sprachausgabe: {param_message}</actioncontainer> <actioncontainer id="t9" x="-1225.0" y="892.5">Sprachausgabe: {param_message}</actioncontainer>
<conditioncontainer id="t10" x="-175.0" y="577.5">Expression: param_button == "stop"</conditioncontainer> <conditioncontainer id="t10" x="-175.0" y="577.5">Expression: param_button == "stop"</conditioncontainer>
<conditioncontainer id="t11" x="560.0" y="577.5">Expression: param_button == "back"</conditioncontainer> <conditioncontainer id="t11" x="560.0" y="577.5">Expression: param_button == "back"</conditioncontainer>
<actioncontainer id="t12" x="1435.0" y="892.5">Setze Display Orientierung: Landscape</actioncontainer> <conditioncontainer id="t12" x="1680.0" y="577.5">Expression: param_orientation == "portrait"</conditioncontainer>
<actioncontainer id="t13" x="1680.0" y="892.5">Setze Display Orientierung: Portrait</actioncontainer> <conditioncontainer id="t13" x="875.0" y="577.5">Expression: param_fullscreen == "on"</conditioncontainer>
<actioncontainer id="t14" x="1925.0" y="892.5">Setze Display Orientierung: Auf Default zurücksetzen</actioncontainer> <conditioncontainer id="t14" x="1084.9999" y="577.50006">Expression: param_fullscreen == "off"</conditioncontainer>
<conditioncontainer id="t15" x="1435.0" y="577.5">Expression: param_orientation == "landscape"</conditioncontainer> <actioncontainer id="t15" x="1085.0" y="892.5">Setze Vollbild Modus: Auf Default zurücksetzen</actioncontainer>
<conditioncontainer id="t16" x="1680.0" y="577.5">Expression: param_orientation == "portrait"</conditioncontainer> <actioncontainer id="t16" x="-2835.0" y="892.5">App Starten: tuneinradio</actioncontainer>
<conditioncontainer id="t17" x="1925.0" y="577.5">Expression: param_orientation == "default"</conditioncontainer> <conditioncontainer id="t17" x="-1820.0" y="-122.5">Expression: setVolume"</conditioncontainer>
<conditioncontainer id="t18" x="875.0" y="577.5">Expression: param_fullscreen == "on"</conditioncontainer> <conditioncontainer id="t18" x="-1225.0" y="-122.5">Expression: ttsMsg"</conditioncontainer>
<conditioncontainer id="t19" x="1084.9999" y="577.50006">Expression: param_fullscreen == "off"</conditioncontainer> <conditioncontainer id="t19" x="-1015.0" y="-122.5">Expression: setBrightness"</conditioncontainer>
<actioncontainer id="t20" x="1085.0" y="892.5">Setze Vollbild Modus: Auf Default zurücksetzen</actioncontainer> <conditioncontainer id="t20" x="-805.0" y="-122.5">Expression: setAlarm"</conditioncontainer>
<actioncontainer id="t21" x="-2835.0" y="892.5">App Starten: tuneinradio</actioncontainer> <conditioncontainer id="t21" x="-595.0" y="-122.5">Expression: screenMsg"</conditioncontainer>
<conditioncontainer id="t22" x="-1820.0" y="-122.5">Expression: setVolume"</conditioncontainer> <conditioncontainer id="t22" x="-385.0" y="-122.5">Expression: openURL"</conditioncontainer>
<conditioncontainer id="t23" x="-1225.0" y="-122.5">Expression: ttsMsg"</conditioncontainer> <conditioncontainer id="t23" x="175.0" y="-122.5">Expression: mediaPlayer"</conditioncontainer>
<conditioncontainer id="t24" x="-1015.0" y="-122.5">Expression: setBrightness"</conditioncontainer> <conditioncontainer id="t24" x="979.9999" y="-122.49999">Expression: setScreenFullscreen"</conditioncontainer>
<conditioncontainer id="t25" x="-805.0" y="-122.5">Expression: setAlarm"</conditioncontainer> <conditioncontainer id="t25" x="1680.0" y="-122.499985">Expression: setScreenOrientation"</conditioncontainer>
<conditioncontainer id="t26" x="-595.0" y="-122.5">Expression: screenMsg"</conditioncontainer> <actioncontainer id="t26" x="-1820.0" y="892.5">Lautstärken setzen</actioncontainer>
<conditioncontainer id="t27" x="-385.0" y="-122.5">Expression: openURL"</conditioncontainer> <actioncontainer id="t27" x="-1015.0" y="892.5">Setze Systemeinstellung: System screen_brightness auf {param_brightness}</actioncontainer>
<conditioncontainer id="t28" x="175.0" y="-122.5">Expression: mediaPlayer"</conditioncontainer> <actioncontainer id="t28" x="-805.0" y="892.5">Setze Alarm: um {param_hour}:{param_minute}</actioncontainer>
<conditioncontainer id="t29" x="979.9999" y="-122.49999">Expression: setScreenFullscreen"</conditioncontainer> <actioncontainer id="t29" x="-385.0" y="892.5">URL in Browser öffnen: {param_url} (mit Chrome)</actioncontainer>
<conditioncontainer id="t30" x="1680.0" y="-122.499985">Expression: setScreenOrientation"</conditioncontainer> <actioncontainer id="t30" x="-595.0" y="892.5">Benachrichtigung auf Bildschirm: {param_message} (lange)</actioncontainer>
<actioncontainer id="t31" x="-1820.0" y="892.5">Lautstärken setzen</actioncontainer> <actioncontainer id="t31" x="875.0" y="892.5">Setze Vollbild Modus: Navigation nicht anzeigen</actioncontainer>
<actioncontainer id="t32" x="-1015.0" y="892.5">Setze Systemeinstellung: System screen_brightness auf {param_brightness}</actioncontainer> <actioncontainer id="t32" x="-1610.0" y="892.5">Gerät sperren</actioncontainer>
<actioncontainer id="t33" x="-805.0" y="892.5">Setze Alarm: um {param_hour}:{param_minute}</actioncontainer> <actioncontainer id="t33" x="-1435.0" y="892.5">Schalte Display ein: Hell für 120s</actioncontainer>
<actioncontainer id="t34" x="-385.0" y="892.5">URL in Browser öffnen: {param_url} (mit Chrome)</actioncontainer> <actioncontainer id="t34" x="-2590.0" y="892.5">App Starten: App3</actioncontainer>
<actioncontainer id="t35" x="-595.0" y="892.5">Benachrichtigung auf Bildschirm: {param_message} (lange)</actioncontainer> <actioncontainer id="t35" x="-2345.0" y="892.5">App Starten: App4</actioncontainer>
<actioncontainer id="t36" x="875.0" y="892.5">Setze Vollbild Modus: Navigation nicht anzeigen</actioncontainer> <actioncontainer id="t36" x="-2099.9998" y="892.5">App Starten: App5</actioncontainer>
<actioncontainer id="t37" x="-1610.0" y="892.5">Gerät sperren</actioncontainer> <conditioncontainer id="t37" x="-2590.0" y="367.50027">Expression: App3</conditioncontainer>
<actioncontainer id="t38" x="-1435.0" y="892.5">Schalte Display ein: Hell für 120s</actioncontainer> <conditioncontainer id="t38" x="-2345.0" y="367.50027">Expression: App4</conditioncontainer>
<actioncontainer id="t39" x="-2590.0" y="892.5">App Starten: App3</actioncontainer> <conditioncontainer id="t39" x="-2100.0" y="367.50027">Expression: App5</conditioncontainer>
<actioncontainer id="t40" x="-2345.0" y="892.5">App Starten: App4</actioncontainer> <conditioncontainer id="t40" x="-2590.0" y="577.5">App Task läuft: App3 (neuster)</conditioncontainer>
<actioncontainer id="t41" x="-2099.9998" y="892.5">App Starten: App5</actioncontainer> <conditioncontainer id="t41" x="-2345.0" y="577.5">App Task läuft: App4 (neuster)</conditioncontainer>
<conditioncontainer id="t42" x="-2835.0" y="367.50027">Expression: App2</conditioncontainer> <conditioncontainer id="t42" x="-2100.0" y="577.5">App Task läuft: App5 (neuster)</conditioncontainer>
<conditioncontainer id="t43" x="-2590.0" y="367.50027">Expression: App3</conditioncontainer> <conditioncontainer id="t43" x="-2590.0" y="-122.49996">Expression: openApp"</conditioncontainer>
<conditioncontainer id="t44" x="-2345.0" y="367.50027">Expression: App4</conditioncontainer> <conditioncontainer id="t44" x="-1610.0" y="-122.5">Expression: setScreenOnOff"</conditioncontainer>
<conditioncontainer id="t45" x="-2100.0" y="367.50027">Expression: App5</conditioncontainer> <conditioncontainer id="t45" x="-3815.0" y="-122.49997">Expression: System Command"</conditioncontainer>
<conditioncontainer id="t46" x="-3080.0" y="577.5">App Task läuft: App1 (neuster)</conditioncontainer> <actioncontainer id="t46" x="-3080.0" y="892.5">App Starten: PlayMusic</actioncontainer>
<conditioncontainer id="t47" x="-2590.0" y="577.5">App Task läuft: App3 (neuster)</conditioncontainer> <conditioncontainer id="t47" x="-3815.0" y="367.50027">Expression: Reboot</conditioncontainer>
<conditioncontainer id="t48" x="-2345.0" y="577.5">App Task läuft: App4 (neuster)</conditioncontainer> <triggercontainer id="t48" x="-1015.0002" y="-962.5001">
<conditioncontainer id="t49" x="-2100.0" y="577.5">App Task läuft: App5 (neuster)</conditioncontainer>
<conditioncontainer id="t50" x="-2835.0" y="577.5">App Task läuft: App2 (neuster)</conditioncontainer>
<conditioncontainer id="t51" x="-2590.0" y="-122.49996">Expression: openApp"</conditioncontainer>
<conditioncontainer id="t52" x="-1610.0" y="-122.5">Expression: setScreenOnOff"</conditioncontainer>
<conditioncontainer id="t53" x="-3080.0" y="367.50027">Expression: App1</conditioncontainer>
<conditioncontainer id="t54" x="-3815.0" y="-122.49997">Expression: System Command"</conditioncontainer>
<actioncontainer id="t55" x="-3080.0" y="892.5">App Starten: PlayMusic</actioncontainer>
<conditioncontainer id="t56" x="-3815.0" y="367.50027">Expression: Reboot</conditioncontainer>
<triggercontainer id="t57" x="-1015.0002" y="-962.5001">
<trigger>HTTP Request: /fhem-amad/setCommands/*, Port 8090</trigger> <trigger>HTTP Request: /fhem-amad/setCommands/*, Port 8090</trigger>
</triggercontainer> </triggercontainer>
<actioncontainer id="t58" x="-3430.0" y="892.5">Neustart </actioncontainer> <actioncontainer id="t49" x="-3430.0" y="892.5">Neustart </actioncontainer>
<connection from="t1" to="t37" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <actioncontainer id="t50" x="1680.0" y="892.5">Setze Display Orientierung: Portrait</actioncontainer>
<connection from="t2" to="t38" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <actioncontainer id="t51" x="1470.0" y="892.5">Setze Display Orientierung: Landscape</actioncontainer>
<conditioncontainer id="t52" x="1470.0" y="577.5">Expression: param_orientation == "landscape"</conditioncontainer>
<actioncontainer id="t53" x="1575.0" y="1032.4996">Display automatisch drehen ein-/ausschalten: Aus</actioncontainer>
<actioncontainer id="t54" x="1890.0" y="892.5">Setze Display Orientierung: Auf Default zurücksetzen</actioncontainer>
<actioncontainer id="t55" x="1890.0" y="1032.4996">Display automatisch drehen ein-/ausschalten: Ein</actioncontainer>
<conditioncontainer id="t56" x="1890.0" y="577.5">Expression: param_orientation == "auto"</conditioncontainer>
<conditioncontainer id="t57" x="-3080.0" y="367.50027">Expression: gplay</conditioncontainer>
<conditioncontainer id="t58" x="-3080.0" y="577.5">App Task läuft: gplay (neuster)</conditioncontainer>
<conditioncontainer id="t59" x="-2835.0" y="577.5">App Task läuft: tuneinradio (neuster)</conditioncontainer>
<conditioncontainer id="t60" x="-2835.0" y="367.50027">Expression: tuneinradio</conditioncontainer>
<connection from="t1" to="t32" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t2" to="t33" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t4" to="t5" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t4" to="t5" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t7" to="t6" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t7" to="t6" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t10" to="t3" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t10" to="t3" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t11" to="t8" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t11" to="t8" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t15" to="t12" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t12" to="t50" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t16" to="t13" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t13" to="t31" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t17" to="t14" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t14" to="t15" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t18" to="t36" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t17" to="t26" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t19" to="t20" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t18" to="t9" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t22" to="t31" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t19" to="t27" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t23" to="t9" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t20" to="t28" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t24" to="t32" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t21" to="t30" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t25" to="t33" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t22" to="t29" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t26" to="t35" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t23" to="t10" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t27" to="t34" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t23" to="t4" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t28" to="t10" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t23" to="t7" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t28" to="t4" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t23" to="t11" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t28" to="t7" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t24" to="t13" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t28" to="t11" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t24" to="t14" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t29" to="t18" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t25" to="t12" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t29" to="t19" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t25" to="t52" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t30" to="t16" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t25" to="t56" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t30" to="t15" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t37" to="t40" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t30" to="t17" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t38" to="t41" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t42" to="t50" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t39" to="t42" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t43" to="t47" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t40" to="t34" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t44" to="t48" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t41" to="t35" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t45" to="t49" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t42" to="t36" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t46" to="t55" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t43" to="t37" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t47" to="t39" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t43" to="t57" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t48" to="t40" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t43" to="t60" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t49" to="t41" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t43" to="t38" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t50" to="t21" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t43" to="t39" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t51" to="t43" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t44" to="t1" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t51" to="t53" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t44" to="t2" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t51" to="t42" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t45" to="t47" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t51" to="t44" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t47" to="t49" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t51" to="t45" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t43" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t52" to="t1" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t17" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t52" to="t2" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t44" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t53" to="t46" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t18" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t54" to="t56" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t19" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t56" to="t58" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t20" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t51" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t21" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t22" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t22" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t52" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t23" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t23" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t24" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t25" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t25" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t48" to="t45" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t26" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t50" to="t53" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t27" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t51" to="t53" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t28" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t52" to="t51" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t29" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t54" to="t55" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t30" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t56" to="t54" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t57" to="t54" type="NORMAL" sourcePosition="SOUTH" targetPosition="NORTH" /> <connection from="t57" to="t58" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t58" to="t46" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t59" to="t16" type="FALSE" sourcePosition="SOUTH" targetPosition="NORTH" />
<connection from="t60" to="t59" type="TRUE" sourcePosition="SOUTH" targetPosition="NORTH" />
</flow> </flow>
</data> </data>