From a5fdb960de8798908cc2a587485af920ff98c574 Mon Sep 17 00:00:00 2001 From: Marko Oldenburg Date: Thu, 18 Feb 2016 15:18:38 +0100 Subject: [PATCH] =?UTF-8?q?diverse=20Anpassungen=20in=20den=20Flows,=20log?= =?UTF-8?q?ische=20Strukturen=20f=C3=BCr=20die=20Pr=C3=BCfungen=20in=20den?= =?UTF-8?q?=20Flows,=20Im=20Modul=20komplettes=20rewrite=20der=20Fehlerbeh?= =?UTF-8?q?andlung=20beim=20statusRequest,=20Mehr=20Logausgaben=20zur=20be?= =?UTF-8?q?sseren=20Fehlerbehandlung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 74_AMAD.pm | 165 +- 74_AMADautomagicFlows_1.3.x.xml | 1671 -------------------- 74_AMADautomagicFlows_1.9.11.xml | 2535 ++++++++++++++++++++++++++++++ 3 files changed, 2627 insertions(+), 1744 deletions(-) delete mode 100644 74_AMADautomagicFlows_1.3.x.xml create mode 100644 74_AMADautomagicFlows_1.9.11.xml diff --git a/74_AMAD.pm b/74_AMAD.pm index 800f749..1e82c75 100644 --- a/74_AMAD.pm +++ b/74_AMAD.pm @@ -37,7 +37,7 @@ use TcpServerUtils; use Encode qw(encode); -my $version = "1.9.6"; +my $version = "1.9.11"; @@ -91,16 +91,17 @@ sub AMAD_Define($$) { $hash->{helper}{infoErrorCounter} = 0 if( $hash->{HOST} ); $hash->{helper}{setCmdErrorCounter} = 0 if( $hash->{HOST} ); - - - + + + if( ! $hash->{HOST} ) { - return "there is already a AMAD Bridge, did you want to define a AMAD host use: define AMAD " if( $modules{AMAD}{defptr}{BRIDGE} ); + return "there is already a AMAD Bridge, did you want to define a AMAD host use: define AMAD " if( $modules{AMAD}{defptr}{BRIDGE} ); $hash->{BRIDGE} = 1; $modules{AMAD}{defptr}{BRIDGE} = $hash; $attr{$name}{room} = "AMAD" if( !defined( $attr{$name}{room} ) ); Log3 $name, 3, "AMAD ($name) - defined Bridge with Socketport $hash->{PORT}"; + Log3 $name, 3, "AMAD ($name) - Attention!!! By the first run, dont forget to \"set $name fhemServerIP \""; AMAD_CommBridge_Open( $hash ); } else { @@ -115,10 +116,12 @@ sub AMAD_Define($$) { readingsSingleUpdate ( $hash, "deviceState", "online", 1 ) if( $hash->{HOST} ); RemoveInternalTimer($hash); - InternalTimer( gettimeofday()+15, "AMAD_GetUpdateTimer", $hash, 0 ) if( $hash->{HOST} ); + InternalTimer( gettimeofday()+15, "AMAD_GetUpdate", $hash, 0 ) if( ($hash->{HOST}) && ($hash->{APSSID}) ); $modules{AMAD}{defptr}{$hash->{HOST}} = $hash; - + + + return "Your Device was defined without ACCESSPOINT-SSID, please modify the DEF to " if( ! $hash->{APSSID} ); return undef; } } @@ -132,6 +135,7 @@ sub AMAD_Undef($$) { TcpServer_Close( $hash ); } else { + delete $modules{AMAD}{defptr}{$hash->{HOST}}; RemoveInternalTimer( $hash ); @@ -159,7 +163,7 @@ my ( $cmd, $name, $attrName, $attrVal ) = @_; if( $cmd eq "set" ) { if( $attrVal eq "0" ) { RemoveInternalTimer( $hash ); - InternalTimer( gettimeofday()+2, "AMAD_GetUpdateTimer", $hash, 0 ) if( ReadingsVal( $hash->{NAME}, "state", 0 ) eq "disabled" ); + InternalTimer( gettimeofday()+2, "AMAD_GetUpdate", $hash, 0 ) if( ReadingsVal( $hash->{NAME}, "state", 0 ) eq "disabled" ); readingsSingleUpdate ( $hash, "state", "active", 1 ); Log3 $name, 3, "AMAD ($name) - enabled"; } else { @@ -170,7 +174,7 @@ my ( $cmd, $name, $attrName, $attrVal ) = @_; } else { RemoveInternalTimer( $hash ); - InternalTimer( gettimeofday()+2, "AMAD_GetUpdateTimer", $hash, 0 ) if( ReadingsVal( $hash->{NAME}, "state", 0 ) eq "disabled" ); + InternalTimer( gettimeofday()+2, "AMAD_GetUpdate", $hash, 0 ) if( ReadingsVal( $hash->{NAME}, "state", 0 ) eq "disabled" ); readingsSingleUpdate ( $hash, "state", "active", 1 ); Log3 $name, 3, "AMAD ($name) - enabled"; } @@ -214,21 +218,24 @@ sub AMAD_GetUpdate($) { my ( $hash ) = @_; my $name = $hash->{NAME}; + my $bhash = $modules{AMAD}{defptr}{BRIDGE}; + my $bname = $bhash->{NAME}; RemoveInternalTimer( $hash ); - if( $init_done && ReadingsVal( $name, "deviceState", "online" ) eq "online" && AttrVal( $name, "disable", 0 ) ne "1") { ### deviceState muß von Hand online/offline gesetzt werden z.B. ueber RESIDENZ Modul + if( $init_done && ReadingsVal( $name, "deviceState", "online" ) eq "online" && AttrVal( $name, "disable", 0 ) ne "1" && ReadingsVal( $bname, "fhemServerIP", "not set" ) ne "not set" ) { - AMAD_RetrieveAutomagicInfo( $hash ); + AMAD_statusRequest( $hash ); + } else { - InternalTimer( gettimeofday()+15, "AMAD_GetUpdateTimer", $hash, 0 ); + InternalTimer( gettimeofday()+15, "AMAD_GetUpdate", $hash, 0 ); Log3 $name, 3, "AMAD ($name) - GetUpdate, FHEM or Device not ready yet"; + Log3 $name, 3, "AMAD ($name) - GetUpdate, Please set \"$bname fhemServerIP \" NOW!"; } - } -sub AMAD_RetrieveAutomagicInfo($) { +sub AMAD_statusRequest($) { my ($hash) = @_; my $bhash = $modules{AMAD}{defptr}{BRIDGE}; @@ -251,42 +258,36 @@ sub AMAD_RetrieveAutomagicInfo($) { method => "GET", header => "fhemIP: $fhemip\r\nfhemDevice: $name\r\nactiveTask: $activetask\r\napSSID: $apssid", doTrigger => 1, - callback => \&AMAD_RetrieveAutomagicInfoFinished, + callback => \&AMAD_statusRequestErrorHandling, } ); - Log3 $name, 4, "AMAD ($name) - NonblockingGet get URL"; - Log3 $name, 4, "AMAD ($name) - AMAD_RetrieveAutomagicInfo: calling Host: $host"; } -sub AMAD_RetrieveAutomagicInfoFinished($$$) { +sub AMAD_statusRequestErrorHandling($$$) { my ( $param, $err, $data ) = @_; my $hash = $param->{hash}; my $doTrigger = $param->{doTrigger}; my $name = $hash->{NAME}; my $host = $hash->{HOST}; - - Log3 $name, 4, "AMAD ($name) - AMAD_RetrieveAutomagicInfoFinished: processed request data"; - ### Begin Error Handling - if( $hash->{helper}{infoErrorCounter} > 2 ) { + if( $hash->{helper}{infoErrorCounter} > 0 ) { readingsBeginUpdate( $hash ); readingsBulkUpdate( $hash, "lastStatusRequestState", "statusRequest_error" ); if( ReadingsVal( $name, "flow_Informations", "active" ) eq "inactive" && ReadingsVal( $name, "flow_SetCommands", "active" ) eq "inactive" ) { - readingsBulkUpdate( $hash, "lastStatusRequestError", "AMAD flows on your device inactive, please check your device" ); - Log3 $name, 5, "AMAD ($name) - CHECK THE LAST ERROR READINGS FOR MORE INFO, DEVICE IS SET OFFLINE"; + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: CHECK THE LAST ERROR READINGS FOR MORE INFO, DEVICE IS SET OFFLINE"; readingsBulkUpdate( $hash, "deviceState", "offline" ); readingsBulkUpdate ( $hash, "state", "AMAD Flows inactive, device set offline"); } - elsif( $hash->{helper}{infoErrorCounter} > 9 && $hash->{helper}{setCmdErrorCounter} > 4 ) { - readingsBulkUpdate( $hash, "lastStatusRequestError", "unknown error, please contact the developer" ); + + elsif( $hash->{helper}{infoErrorCounter} > 7 && $hash->{helper}{setCmdErrorCounter} > 4 ) { - Log3 $name, 4, "AMAD ($name) - UNKNOWN ERROR, PLEASE CONTACT THE DEVELOPER, DEVICE DISABLED"; + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: UNKNOWN ERROR, PLEASE CONTACT THE DEVELOPER, DEVICE DISABLED"; $attr{$name}{disable} = 1; readingsBulkUpdate ( $hash, "state", "Unknown Error, device disabled"); @@ -296,24 +297,24 @@ sub AMAD_RetrieveAutomagicInfoFinished($$$) { return; } + elsif( ReadingsVal( $name, "flow_Informations", "active" ) eq "inactive" ) { - readingsBulkUpdate( $hash, "lastStatusRequestError", "informations flow on your device is inactive, will try to reactivate" ); - Log3 $name, 4, "AMAD ($name) - Informations Flow on your Device is inactive, will try to reactivate"; + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: Informations Flow on your Device is inactive, will try to reactivate"; } - elsif( $hash->{helper}{infoErrorCounter} > 9 ) { - readingsBulkUpdate( $hash, "lastStatusRequestError", "to many errors, check your network or device configuration" ); + + elsif( $hash->{helper}{infoErrorCounter} > 7 ) { - Log3 $name, 4, "AMAD ($name) - To many Errors please check your Network or Device Configuration, DEVICE IS SET OFFLINE"; + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: To many Errors please check your Network or Device Configuration, DEVICE IS SET OFFLINE"; readingsBulkUpdate( $hash, "deviceState", "offline" ); readingsBulkUpdate ( $hash, "state", "To many Errors, device set offline"); $hash->{helper}{infoErrorCounter} = 0; } - elsif($hash->{helper}{infoErrorCounter} > 4 && ReadingsVal( $name, "flow_Informations", "active" ) eq "active" ){ - readingsBulkUpdate( $hash, "lastStatusRequestError", "check automagicApp on your device" ); + + elsif($hash->{helper}{infoErrorCounter} > 2 && ReadingsVal( $name, "flow_Informations", "active" ) eq "active" ){ - Log3 $name, 4, "AMAD ($name) - Please check the AutomagicAPP on your Device"; + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: Please check the AutomagicAPP on your Device"; } readingsEndUpdate( $hash, 1 ); @@ -328,17 +329,23 @@ sub AMAD_RetrieveAutomagicInfoFinished($$$) { readingsBulkUpdate( $hash, "lastStatusRequestState", "statusRequest_error" ); if( $err =~ /timed out/ ) { - readingsBulkUpdate( $hash, "lastStatusRequestError", "connect to your device is timed out. check network "); + + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: connect to your device is timed out. check network"; } + elsif( ( $err =~ /Keine Route zum Zielrechner/ ) && $hash->{helper}{infoErrorCounter} > 1 ) { - readingsBulkUpdate( $hash,"lastStatusRequestError", "no route to target. bad network configuration or network is down "); + + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: no route to target. bad network configuration or network is down"; + } else { - readingsBulkUpdate($hash, "lastStatusRequestError", $err ); + + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: $err"; } readingsEndUpdate( $hash, 1 ); - Log3 $name, 4, "AMAD ($name) - AMAD_RetrieveAutomagicInfoFinished: error while requesting AutomagicInfo: $err"; + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: AMAD_statusRequestErrorHandling: error while requesting AutomagicInfo: $err"; + return; } } @@ -351,13 +358,13 @@ sub AMAD_RetrieveAutomagicInfoFinished($$$) { readingsBulkUpdate( $hash, "lastStatusRequestState", "statusRequest_error" ); if( $param->{code} ne 200 ) { - readingsBulkUpdate( $hash," lastStatusRequestError", "http Error ".$param->{code} ); + + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: ".$param->{code}; } - - readingsBulkUpdate( $hash, "lastStatusRequestError", "empty response, check automagicApp on your device" ); + readingsEndUpdate( $hash, 1 ); - Log3 $name, 4, "AMAD ($name) - AMAD_RetrieveAutomagicInfoFinished: received http code ".$param->{code}." without any data after requesting AMAD AutomagicInfo"; + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: received http code ".$param->{code}." without any data after requesting AMAD AutomagicInfo"; return; } @@ -370,17 +377,22 @@ sub AMAD_RetrieveAutomagicInfoFinished($$$) { readingsBulkUpdate( $hash, "lastStatusRequestState", "statusRequest_error" ); if( $param->{code} eq 404 && ReadingsVal( $name, "flow_Informations", "inactive" ) eq "inactive" ) { - readingsBulkUpdate( $hash, "lastStatusRequestError", "check the informations flow on your device" ); + + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: check the informations flow on your device"; } + elsif( $param->{code} eq 404 && ReadingsVal( $name, "flow_Informations", "active" ) eq "active" ) { - readingsBulkUpdate( $hash, "lastStatusRequestError", "check the automagicApp on your device" ); + + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: check the automagicApp on your device"; + } else { - readingsBulkUpdate( $hash, "lastStatusRequestError", "http error ".$param->{code} ); + + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: http error ".$param->{code}; } readingsEndUpdate( $hash, 1 ); - Log3 $name, 4, "AMAD ($name) - AMAD_RetrieveAutomagicInfoFinished: received http code ".$param->{code}." receive Error after requesting AMAD AutomagicInfo"; + Log3 $name, 5, "AMAD ($name) - statusRequestERROR: received http code ".$param->{code}." receive Error after requesting AMAD AutomagicInfo"; return; } @@ -388,8 +400,6 @@ sub AMAD_RetrieveAutomagicInfoFinished($$$) { ### End Error Handling $hash->{helper}{infoErrorCounter} = 0; - - AMAD_ResponseProcessing($hash,$data); } sub AMAD_ResponseProcessing($$) { @@ -400,6 +410,7 @@ sub AMAD_ResponseProcessing($$) { my $host = $hash->{HOST}; ### Begin Response Processing + Log3 $name, 4, "AMAD ($name) - Processing data: $data"; readingsSingleUpdate( $hash, "state", "active", 1) if( ReadingsVal( $name, "state", 0 ) ne "initialized" or ReadingsVal( $name, "state", 0 ) ne "active" ); my @valuestring = split( '@@@@', $data ); @@ -788,16 +799,15 @@ sub AMAD_HTTP_POSTerrorHandling($$$) { readingsBulkUpdate( $hash, "lastSetCommandState", "statusRequest_error" ); if( ReadingsVal( $name, "flow_Informations", "active" ) eq "inactive" && ReadingsVal( $name, "flow_SetCommands", "active" ) eq "inactive" ) { - readingsBulkUpdate( $hash, "lastSetCommandError", "AMAD flows on your device inactive, please check your device" ); - Log3 $name, 5, "AMAD ($name) - CHECK THE LAST ERROR READINGS FOR MORE INFO, DEVICE IS SET OFFLINE"; + Log3 $name, 5, "AMAD ($name) - setCommandERROR: CHECK THE LAST ERROR READINGS FOR MORE INFO, DEVICE IS SET OFFLINE"; readingsBulkUpdate( $hash, "deviceState", "offline" ); readingsBulkUpdate( $hash, "state", "AMAD Flows inactive, device set offline" ); } - elsif( $hash->{helper}{infoErrorCounter} > 9 && $hash->{helper}{setCmdErrorCounter} > 4 ) { - readingsBulkUpdate($hash, "lastSetCommandError", "unknown error, please contact the developer" ); + + elsif( $hash->{helper}{infoErrorCounter} > 7 && $hash->{helper}{setCmdErrorCounter} > 4 ) { - Log3 $name, 4, "AMAD ($name) - UNKNOWN ERROR, PLEASE CONTACT THE DEVELOPER, DEVICE DISABLED"; + Log3 $name, 5, "AMAD ($name) - setCommandERROR: UNKNOWN ERROR, PLEASE CONTACT THE DEVELOPER, DEVICE DISABLED"; $attr{$name}{disable} = 1; readingsBulkUpdate( $hash, "state", "Unknown Error, device disabled" ); @@ -806,24 +816,24 @@ sub AMAD_HTTP_POSTerrorHandling($$$) { return; } + elsif( ReadingsVal( $name, "flow_SetCommands", "active" ) eq "inactive" ) { - readingsBulkUpdate( $hash, "lastSetCommandError", "setCommands flow on your device is inactive, will try to reactivate" ); - Log3 $name, 4, "AMAD ($name) - Flow SetCommands on your Device is inactive, will try to reactivate"; + Log3 $name, 5, "AMAD ($name) - setCommandERROR: Flow SetCommands on your Device is inactive, will try to reactivate"; } + elsif( $hash->{helper}{setCmdErrorCounter} > 9 ) { - readingsBulkUpdate( $hash, "lastSetCommandError", "to many errors, check your network or device configuration" ); - Log3 $name, 4, "AMAD ($name) - To many Errors please check your Network or Device Configuration, DEVICE IS SET OFFLINE"; + Log3 $name, 5, "AMAD ($name) - setCommandERROR: To many Errors please check your Network or Device Configuration, DEVICE IS SET OFFLINE"; readingsBulkUpdate( $hash, "deviceState", "offline" ); readingsBulkUpdate( $hash, "state", "To many Errors, device set offline" ); $hash->{helper}{setCmdErrorCounter} = 0; } + elsif( $hash->{helper}{setCmdErrorCounter} > 4 && ReadingsVal( $name, "flow_SetCommands", "active" ) eq "active" ){ - readingsBulkUpdate( $hash, "lastSetCommandError", "check automagicApp on your device" ); - Log3 $name, 4, "AMAD ($name) - Please check the AutomagicAPP on your Device"; + Log3 $name, 5, "AMAD ($name) - setCommandERROR: Please check the AutomagicAPP on your Device"; } readingsEndUpdate( $hash, 1 ); @@ -835,19 +845,25 @@ sub AMAD_HTTP_POSTerrorHandling($$$) { readingsBulkUpdate( $hash, "state", $err ) if( ReadingsVal( $name, "state", 0 ) ne "initialized" ); $hash->{helper}{setCmdErrorCounter} = ($hash->{helper}{setCmdErrorCounter} + 1); - readingsBulkUpdate( $hash, "lastSetCommandState", "cmd_error" ); + readingsBulkUpdate( $hash, "lastSetCommandState", "setCmd_error" ); if( $err =~ /timed out/ ) { - readingsBulkUpdate( $hash, "lastSetCommandError", "connect to your device is timed out. check network" ); + + Log3 $name, 5, "AMAD ($name) - setCommandERROR: connect to your device is timed out. check network"; } + elsif( $err =~ /Keine Route zum Zielrechner/ ) { - readingsBulkUpdate( $hash, "lastSetCommandError", "no route to target. bad network configuration or network is down" ); + + Log3 $name, 5, "AMAD ($name) - setCommandERROR: no route to target. bad network configuration or network is down"; + } else { - readingsBulkUpdate( $hash, "lastSetCommandError", "$err" ); + + Log3 $name, 5, "AMAD ($name) - setCommandERROR: $err"; } + readingsEndUpdate( $hash, 1 ); - Log3 $name, 5, "AMAD ($name) - AMAD_HTTP_POST: error while POST Command: $err"; + Log3 $name, 5, "AMAD ($name) - setCommandERROR: error while POST Command: $err"; return; } @@ -859,11 +875,11 @@ sub AMAD_HTTP_POSTerrorHandling($$$) { $hash->{helper}{setCmdErrorCounter} = ( $hash->{helper}{setCmdErrorCounter} + 1 ); - readingsBulkUpdate($hash, "lastSetCommandState", "cmd_error" ); - readingsBulkUpdate($hash, "lastSetCommandError", "http Error ".$param->{code} ); + readingsBulkUpdate($hash, "lastSetCommandState", "setCmd_error" ); + readingsEndUpdate( $hash, 1 ); - Log3 $name, 5, "AMAD ($name) - AMAD_HTTP_POST: received http code ".$param->{code}; + Log3 $name, 5, "AMAD ($name) - setCommandERROR: received http code ".$param->{code}; return; } @@ -874,12 +890,16 @@ sub AMAD_HTTP_POSTerrorHandling($$$) { $hash->{helper}{setCmdErrorCounter} = ( $hash->{helper}{setCmdErrorCounter} + 1 ); - readingsBulkUpdate( $hash, "lastSetCommandState", "cmd_error" ); + readingsBulkUpdate( $hash, "lastSetCommandState", "setCmd_error" ); if( $param->{code} eq 404 ) { - readingsBulkUpdate( $hash, "lastSetCommandError", "setCommands flow is inactive on your device!" ); + + readingsBulkUpdate( $hash, "lastSetCommandError", "" ); + Log3 $name, 5, "AMAD ($name) - setCommandERROR: setCommands flow is inactive on your device!"; + } else { - readingsBulkUpdate( $hash, "lastSetCommandError", "http error ".$param->{code} ); + + Log3 $name, 5, "AMAD ($name) - setCommandERROR: http error ".$param->{code}; } return; @@ -887,7 +907,7 @@ sub AMAD_HTTP_POSTerrorHandling($$$) { ### End Error Handling - readingsSingleUpdate( $hash, "lastSetCommandState", "cmd_done", 1 ); + readingsSingleUpdate( $hash, "lastSetCommandState", "setCmd_done", 1 ); $hash->{helper}{setCmdErrorCounter} = 0; return undef; @@ -962,7 +982,6 @@ sub AMAD_CommBridge_Read($) { if ( $fhemcmd =~ /setreading\b/ ) { my $tv = $data[1]; - ### Begin Response Processing Log3 $name, 4, "AMAD ($name) - AMAD_CommBridge: processing receive reading values"; AMAD_ResponseProcessing($dhash,$tv); diff --git a/74_AMADautomagicFlows_1.3.x.xml b/74_AMADautomagicFlows_1.3.x.xml deleted file mode 100644 index 1101c06..0000000 --- a/74_AMADautomagicFlows_1.3.x.xml +++ /dev/null @@ -1,1671 +0,0 @@ - - - - false - com.android.music.metachanged - true - com.android.music.metachanged - - - - - - - - global_artist = getString("artist"); -global_track = getString("track"); -global_album = getString("album"); - false - - - true - Globale Variable: global_own_reading - true - global_own_reading - - - false - HTTP Request: /fhem-amad/deviceInfo/ - true - /fhem-amad/deviceInfo/ - 8090 - true - - - false - HTTP Request: /fhem-amad/setCommands/* - true - /fhem-amad/setCommands/* - 8090 - true - - - true - Sprachbefehl angefordert - true - - - false - App Task läuft: App3 (neuster) - - true - - - false - App Task läuft: App4 (neuster) - - true - - - false - App Task läuft: App5 (neuster) - - true - - - false - App Task läuft: gplay (neuster) - com.google.android.music - true - - - false - App Task läuft: tuneinradio (neuster) - tunein.player - true - - - true - App Task läuft: {header_activetask} (neuster) - {header_activetask} - true - - - false - Benachrichtigung in Statusbar angezeigt: Automagic - ch.gridvision.ppam.androidautomagic - true - 1 - TEXT - CONTAINS_TEXT - - false - false - - - true - Bluetooth eingeschaltet - - - true - Bluetooth Gerät verbunden: Beliebiges Geräte - true - - - ANY - - - true - Display automatisch drehen eingeschaltet - - - true - Display eingeschaltet - - - true - Display Orientierung: Portrait - true - - - false - Expression: Airplanemode - param_syscmd == "airplanemodeON" - - - false - Expression: All - param_app == "All" - - - false - Expression: App3 - param_app == "" - - - false - Expression: App4 - param_app == "" - - - false - Expression: App5 - param_app == "" - - - false - Expression: Automagic - param_app == "Automagic" - - - false - Expression: Clear Automagic Meldungen" - request_path == "/fhem-amad/setCommands/clearnotificationbar" - - - true - Expression: getAndroidSDKVersion() >= "19" - getAndroidSDKVersion() >= "19" - - - false - Expression: gplay - param_app == "gplay" - - - true - Expression: header_activetask != "none" - header_activetask != "none" - - - false - Expression: mediaPlayer" - request_path == "/fhem-amad/setCommands/mediaPlayer" - - - false - Expression: notifysnd" - request_path == "/fhem-amad/setCommands/playnotifysnd" - - - false - Expression: openApp" - request_path == "/fhem-amad/setCommands/openApp" - - - false - Expression: openURL" - request_path == "/fhem-amad/setCommands/openURL" - - - true - Expression: param_bluetooth == "off" - param_bluetooth == "off" - - - true - Expression: param_bluetooth == "on" - param_bluetooth == "on" - - - true - Expression: param_button == "back" - param_button == "back" - - - true - Expression: param_button == "next" - param_button == "next" - - - true - Expression: param_button == "play" - param_button == "play" - - - true - Expression: param_button == "stop" - param_button == "stop" - - - true - Expression: param_fullscreen == "off" - param_fullscreen == "off" - - - true - Expression: param_fullscreen == "on" - param_fullscreen == "on" - - - true - Expression: param_lockmod == "lock" - param_lockmod == "lock" - - - true - Expression: param_notifyfile == "RedAlert.mp3" - param_notifyfile == "RedAlert.mp3" - - - true - Expression: param_orientation == "auto" - param_orientation == "auto" - - - true - Expression: param_orientation == "landscape" - param_orientation == "landscape" - - - true - Expression: param_orientation == "portrait" - param_orientation == "portrait" - - - true - Expression: param_screen=="off" - param_screen=="off" - - - true - Expression: param_screen=="on" - param_screen=="on" - - - false - Expression: Reboot - param_syscmd == "reboot" - - - false - Expression: screenMsg" - request_path == "/fhem-amad/setCommands/screenMsg" - - - false - Expression: sendIntent" - request_path == "/fhem-amad/setCommands/sendIntent" - - - false - Expression: setAlarm" - request_path == "/fhem-amad/setCommands/setAlarm" - - - false - Expression: setBluetooth" - request_path == "/fhem-amad/setCommands/setbluetooth" - - - false - Expression: setBrightness" - request_path == "/fhem-amad/setCommands/setBrightness" - - - false - Expression: setBTDevice" - request_path == "/fhem-amad/setCommands/setbtdevice" - - - false - Expression: setNotifiVolume" - request_path == "/fhem-amad/setCommands/setNotifiVolume" - - - false - Expression: setScreenFullscreen" - request_path == "/fhem-amad/setCommands/setScreenFullscreen" - - - false - Expression: setScreenlock" - request_path == "/fhem-amad/setCommands/screenlock" - - - false - Expression: setScreenOnOff" - request_path == "/fhem-amad/setCommands/setScreenOnOff" - - - false - Expression: setScreenOrientation" - request_path == "/fhem-amad/setCommands/setScreenOrientation" - - - false - Expression: setVibrate" - request_path == "/fhem-amad/setCommands/setvibrate" - - - false - Expression: setVoiceCommand" - request_path == "/fhem-amad/setCommands/setvoicecmd" - - - false - Expression: setVolume" - request_path == "/fhem-amad/setCommands/setVolume" - - - false - Expression: Shutdown - param_syscmd == "shutdown" - - - false - Expression: System Command" - request_path == "/fhem-amad/setCommands/systemcommand" - - - true - Expression: trigger == "com.android.music.metachanged" - trigger == "com.android.music.metachanged" - - - true - Expression: trigger == "Globale Variable: global_own_reading" - trigger == "Globale Variable: global_own_reading" - - - true - Expression: trigger == "HTTP Request: /fhem-amad/setCommands/*" - trigger == "HTTP Request: /fhem-amad/setCommands/*" - - - true - Expression: trigger == "Sprachbefehl angefordert" - trigger == "Sprachbefehl angefordert" - - - false - Expression: ttsMsg" - request_path == "/fhem-amad/setCommands/ttsMsg" - - - false - Expression: tuneinradio - param_app == "tuneinradio" - - - true - Expression: value != "" - value != "" - - - true - Flow Aktiv: Informations - Informations - - - true - Flow Aktiv: SetCommands - SetCommands - - - true - Flugmodus eingeschaltet - - - true - Musik Aktiv - - - true - Stromversorgung: Angeschlossen - true - true - true - true - - - true - WLAN Verbunden: Alle SSIDs - true - - - - false - AMAD Voice Control - true - - true - de-DE - false - - - false - App Starten: App3 - - - - - false - App Starten: App4 - - - - - false - App Starten: App5 - - - - - false - App Starten: PlayMusic - com.google.android.music - - - - false - App Starten: tuneinradio - tunein.player - - - - true - Audio Player steuern: Medienknopf Play (Google Play Musik) - true - TOGGLE_PAUSE - KEYCODE_MEDIA_PLAY - true - com.google.android.music - com.google.android.music.playback.MediaButtonIntentReceiver - Google Play Musik - - - true - Audio Player steuern: Medienknopf Stopp (Google Play Musik) - true - STOP - KEYCODE_MEDIA_STOP - true - com.google.android.music - com.google.android.music.playback.MediaButtonIntentReceiver - Google Play Musik - - - true - Audio Player steuern: Medienknopf Weiter (Google Play Musik) - true - LAUNCH - KEYCODE_MEDIA_NEXT - true - com.google.android.music - com.google.android.music.playback.MediaButtonIntentReceiver - Google Play Musik - - - true - Audio Player steuern: Medienknopf Zurück (Google Play Musik) - true - LAUNCH - KEYCODE_MEDIA_PREVIOUS - true - com.google.android.music - com.google.android.music.playback.MediaButtonIntentReceiver - Google Play Musik - - - true - Benachrichtigung auf Bildschirm: {param_message} (lange) - true - {param_message} - - 200 - 250 - false - 1.0 - true - false - TOP_LEFT - 0 - 0 - - - true - Benachrichtigung auf Bildschirm: {value} (lange) - true - {value} - - 200 - 250 - false - 1.0 - true - false - TOP_LEFT - 0 - 0 - - - true - Benachrichtigung aus Statusbar entfernen: Alle - false - true - 1 - true - - true - {id} - TEXT - CONTAINS_TEXT - - - - true - Benachrichtigung aus Statusbar entfernen: Alle (Automagic) - true - true - 1 - false - - true - {id} - TEXT - CONTAINS_TEXT - - - - true - Bluetooth ein-/ausschalten: Aus - false - - - true - Bluetooth ein-/ausschalten: Ein - true - - - true - Bluetooth Gerät verbinden/trennen: Trennen Advanced Audio Distribution {param_btdeviceone} - A2DP - {param_btdeviceone} - - false - - - true - Bluetooth Gerät verbinden/trennen: Trennen Advanced Audio Distribution {param_btdevicetwo} - A2DP - {param_btdevicetwo} - - false - - - true - Bluetooth Gerät verbinden/trennen: Trennen Eingabegerät {param_btdeviceone} - INPUT_DEVICE - {param_btdeviceone} - - false - - - true - Bluetooth Gerät verbinden/trennen: Trennen Eingabegerät {param_btdevicetwo} - INPUT_DEVICE - {param_btdevicetwo} - - false - - - true - Bluetooth Gerät verbinden/trennen: Trennen Headset {param_btdeviceone} - HEADSET - {param_btdeviceone} - - false - - - true - Bluetooth Gerät verbinden/trennen: Trennen Headset {param_btdevicetwo} - HEADSET - {param_btdevicetwo} - - false - - - true - Bluetooth Gerät verbinden/trennen: Trennen Personal Area Network {param_btdeviceone} - PAN - {param_btdeviceone} - - false - - - true - Bluetooth Gerät verbinden/trennen: Trennen Personal Area Network {param_btdevicetwo} - PAN - {param_btdevicetwo} - - false - - - true - Bluetooth Gerät verbinden/trennen: Verbinden Advanced Audio Distribution {param_swtobtdevicemac} - A2DP - {param_swtobtdevicemac} - - true - - - true - Broadcast senden: {param_action} - {param_action} - false - android.intent.category.DEFAULT - false - - false - text/plain - false - - - FLAG_ACTIVITY_NEW_TASK - putString("{param_exkey1}", "{param_exval1}"); -putString("{param_exkey2}", "{param_exval2}"); - false - - - - true - Display automatisch drehen ein-/ausschalten: Aus - false - - - true - Display automatisch drehen ein-/ausschalten: Ein - true - - - true - Flows ausführen: VoiceControl - VoiceControl - - true - false - false - - - true - Flugmodus ein-/ausschalten: Ein - SYSTEM_SETTING - true - - - true - Gerät sperren - - - false - Get Android Version - - - - true - Herunterfahren - - - false - HTTP Response Information - powerLevel@@{battery_percentage}@@@@powerPlugged@@{battery_plugged}@@@@volumeMusikBluetooth@@{volumeMusikBluetooth}@@@@volumeMusikSpeaker@@{volumeMusikSpeaker}@@@@screenBrightness@@{screenBrightness}@@@@nextAlarmTime@@{next_alarmtime}@@@@nextAlarmDay@@{next_alarmday}@@@@screen@@{screen_state}@@@@automagicState@@{notification_text}@@@@screenOrientation@@{screen_orientation}@@@@currentMusicTrack@@{global_track}@@@@currentMusicAlbum@@{global_album}@@@@currentMusicArtist@@{global_artist}@@@@bluetooth@@{bluetooth_state}@@@@connectedBTdevices@@{connected_devices_names}@@@@connectedBTdevicesMAC@@{connected_devices_addresses}@@@@flow_SetCommands@@{setCommandFlow_state}@@@@checkActiveTask@@{runTask}@@@@androidVersion@@{androidVersion}@@@@volumeNotification@@{volumeNotification}@@@@airplanemode@@{airplanemode} - true - text/plain - - - false - HTTP Response SetCommand - flow_informations@@{informationFlow_state}@@@@ - true - text/plain - - - false - Initialisiere Variable Nächster Alarm: next_alarm - next_alarm - - - false - Initialisiere Variable Systemeinstellung: screenBrightness - SYSTEM - screen_brightness - screenBrightness - - - false - Initialisiere Variable Systemeinstellung: volumeMusikBluetooth - SYSTEM - volume_music_bt_a2dp - volumeMusikBluetooth - - - false - Initialisiere Variable Systemeinstellung: volumeMusikSpeaker - SYSTEM - volume_music_speaker - volumeMusikSpeaker - - - false - Initialisiere Variable Systemeinstellung: volumeNotification - SYSTEM - volume_ring_speaker - volumeNotification - - - false - Lautstärken setzen param_notifivolume - false - global_volume_alarm - false - global_volume_dtmf - false - param_volume - true - param_notifivolume - false - global_volume_ring - false - global_volume_system - false - global_volume_voice_call - false - global_ringer_mode - false - global_interruptions_mode - - - false - Lautstärken setzen param_volume - false - global_volume_alarm - false - global_volume_dtmf - true - param_volume - false - global_volume_notification - false - global_volume_ring - false - global_volume_system - false - global_volume_voice_call - false - global_ringer_mode - false - global_interruptions_mode - - - true - Neustart - - - - false - Notification Lautstärke Speichern - false - global_volume_alarm - false - global_volume_dtmf - false - global_volume_music - true - global_volume_notification - false - global_volume_ring - false - global_volume_system - false - global_volume_voice_call - false - global_ringer_mode - false - global_interruptions_mode - - - false - Notification Lautstärke Wiederherstellen - false - global_volume_alarm - false - global_volume_dtmf - false - param_volume - true - global_volume_notification - false - global_volume_ring - false - global_volume_system - false - global_volume_voice_call - false - global_ringer_mode - false - global_interruptions_mode - - - false - NotificationLautstärke auf Level 7 - NOTIFICATION - 7 - false - false - - - false - Own Reading - http://{global_fhemip}:8090 - false - false - - POST - GENERAL_TEXT - text/plain - {substring(getValue("global_own_reading",""),14)}@@{getValue("global_{substring(getValue('global_own_reading',''),14)}","nicht gefunden")}@@@@ - @@@@readingsNameXYZ@@readingsValueABC - 60000 - true - FHEMDEVICE: {global_fhemdevice} -FHEMCMD: setreading - true - response - /storage/emulated/0/Download/file.bin - true - - - true - Pause: 2s (Gerät wach halten) - 2s - true - false - - - true - Pause: 3s (Gerät wach halten) - 3s - true - false - - - false - Reading Music Metachanged - http://{global_fhemip}:8090 - false - false - - POST - GENERAL_TEXT - text/plain - currentMusicTrack@@{global_track}@@@@currentMusicAlbum@@{global_album}@@@@currentMusicArtist@@{global_artist}@@@@ - @@@@readingsNameXYZ@@readingsValueABC - 60000 - true - FHEMDEVICE: {global_fhemdevice} -FHEMCMD: setreading - true - response - /storage/emulated/0/Download/file.bin - true - - - true - Schalte Display ein: Hell für 120s - true - 120s - true - - - true - Script: airplanemode = "off" - - - - true - Script: androidVersion = "not supported funktion" - - - - true - Script: bluetooth_state = "off" - - - - true - Script: bluetooth_state = "on" - - - - true - Script: global_artist = "no soundplayer activ"; global_track = "no soundplayer activ"; global_album = "no soundplayer activ"; - - - - true - Script: global_fhemip = {header_fhemip} global_fhemdevice = {header_fhemdevice} - - - - true - Script: informationFlow_state = "aktiv" - - - - true - Script: informationFlow_state = "inaktiv" - - - - true - Script: next_alarmday = "{next_alarm,dateformat,c}" - - - - true - Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}" - - - - true - Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" - - - - true - Script: notification_text = "not supported from your device" - - - - true - Script: runTask = "0" - - - - true - Script: runTask = "1" - - - - true - Script: runTask = "not supported android version" - - - - true - Script: runTask = "null" - - - - true - Script: screen_orientation = "auto" - - - - true - Script: screen_orientation = "landscape" - - - - true - Script: screen_orientation = "portrait" - - - - true - Script: screen_state = "off" - - - - true - Script: screen_state = "on" - - - - true - Script: setCommandFlow_state = "aktiv" - - - - true - Script: setCommandFlow_state = "inaktiv" - - - - false - Send Voice Input Value to AMADCommBridge - http://{global_fhemip}:8090 - false - false - - POST - GENERAL_TEXT - text/plain - {value} - @@@@readingsNameXYZ@@readingsValueABC - 60000 - true - FHEMDEVICE: {global_fhemdevice} -FHEMCMD: voiceinputvalue - true - response - /storage/emulated/0/Download/file.bin - true - - - true - Setze Alarm: um {param_hour}:{param_minute} - - {param_hour} - {param_minute} - - - true - Setze Display Helligkeit: {param_brightness} - false - {param_brightness} - false - 50 - - - true - Setze Display Orientierung: Auf Default zurücksetzen - UNSPECIFIED - false - - - true - Setze Display Orientierung: Landscape - LANDSCAPE - false - - - true - Setze Display Orientierung: Portrait - PORTRAIT - false - - - true - Setze Flow Status: Aktivieren Informations - true - Informations - - - - true - Setze Flow Status: Aktivieren SetCommands - true - SetCommands - - - - true - Setze Lock PIN/Passwort: PIN/Passwort zurücksetzen - true - PIN - false - param_lockPIN - - - true - Setze Lock PIN/Passwort: Setze PIN von Variable param_lockpin - false - PIN - false - param_lockpin - - - true - Setze Vollbild Modus: Auf Default zurücksetzen - UNSPECIFIED - false - - - true - Setze Vollbild Modus: Navigation nicht anzeigen - HIDE_NAVIGATION - false - - - true - Sound: /storage/emulated/0/Notifications/{param_notifyfile} als Benachrichtigung - FILE - Lautlos - /storage/emulated/0/Notifications/{param_notifyfile} - NOTIFICATION - false - true - true - TRANSIENT - - - true - Sprachausgabe: {param_message} - MUSIC - {param_message} - de_DE - true - 1.0 - true - 1.0 - true - false - false - true - TRANSIENT - - - false - Spracheingabe wurde nicht erkannt - NOTIFICATION - Ihre Eingabe wurde nicht verstanden - de_DE - true - 1.0 - true - 1.0 - true - false - false - true - TRANSIENT - - - false - StatusRequest - http://{global_fhemip}:8090 - false - false - - POST - GENERAL_TEXT - text/plain - - @@@@readingsNameXYZ@@readingsValueABC - 60000 - true - FHEMDEVICE: {global_fhemdevice} -FHEMCMD: statusrequest - true - response - /storage/emulated/0/Download/file.bin - true - - - true - URL in Browser öffnen: {param_url} (mit Chrome) - {param_url} - true - com.android.chrome - com.google.android.apps.chrome.Main - Chrome - - - true - Vibrieren: Pattern 2 (-- --) - false - vibrate_pattern_2 - 0,500 - - - Informations - FHEM Info / Steuerung über AMAD Modul v1.2.0 - true - QUEUE - 240 - - HTTP Request: /fhem-amad/deviceInfo/ - com.android.music.metachanged - Globale Variable: global_own_reading - - Initialisiere Variable Nächster Alarm: next_alarm - Initialisiere Variable Systemeinstellung: screenBrightness - Initialisiere Variable Systemeinstellung: volumeMusikSpeaker - Initialisiere Variable Systemeinstellung: volumeMusikBluetooth - Flow Aktiv: SetCommands - Musik Aktiv - Pause: 2s (Gerät wach halten) - Expression: trigger == "com.android.music.metachanged" - WLAN Verbunden: Alle SSIDs - WLAN Verbunden: Alle SSIDs - Reading Music Metachanged - Display automatisch drehen eingeschaltet - Script: runTask = "1" - Setze Flow Status: Aktivieren SetCommands - Script: global_artist = "no soundplayer activ"; global_track = "no soundplayer activ"; global_album = "no soundplayer activ"; - Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}" - Script: next_alarmday = "{next_alarm,dateformat,c}" - Script: screen_orientation = "auto" - Script: screen_orientation = "portrait" - Script: screen_orientation = "landscape" - Display Orientierung: Portrait - Script: runTask = "0" - App Task läuft: {header_activetask} (neuster) - Expression: header_activetask != "none" - Script: runTask = "null" - Script: notification_text = "not supported from your device" - Benachrichtigung in Statusbar angezeigt: Automagic - Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" - Script: screen_state = "off" - Script: screen_state = "on" - Display eingeschaltet - Expression: getAndroidSDKVersion() >= "19" - Bluetooth Gerät verbunden: Beliebiges Geräte - Script: bluetooth_state = "on" - Bluetooth eingeschaltet - Script: bluetooth_state = "off" - Own Reading - Expression: trigger == "Globale Variable: global_own_reading" - Script: global_fhemip = {header_fhemip} global_fhemdevice = {header_fhemdevice} - Initialisiere Variable Systemeinstellung: volumeNotification - Flugmodus eingeschaltet - Stromversorgung: Angeschlossen - Script: airplanemode = "off" - HTTP Response Information - Script: setCommandFlow_state = "inaktiv" - Script: setCommandFlow_state = "aktiv" - Expression: getAndroidSDKVersion() >= "19" - Script: runTask = "not supported android version" - Get Android Version - Script: androidVersion = "not supported funktion" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SetCommands - FHEM Info / Steuerung über AMAD Modul v1.2.0 - true - QUEUE - 240 - - HTTP Request: /fhem-amad/deviceInfo/ - HTTP Request: /fhem-amad/setCommands/* - Sprachbefehl angefordert - - Expression: param_screen=="on" - Expression: setBrightness" - Expression: setAlarm" - Expression: screenMsg" - URL in Browser öffnen: {param_url} (mit Chrome) - Benachrichtigung auf Bildschirm: {param_message} (lange) - Expression: setScreenFullscreen" - Expression: param_orientation == "auto" - Setze Display Orientierung: Portrait - Setze Display Orientierung: Landscape - Expression: param_orientation == "landscape" - Setze Vollbild Modus: Navigation nicht anzeigen - Setze Vollbild Modus: Auf Default zurücksetzen - Expression: param_button == "back" - Expression: param_button == "next" - Setze Display Orientierung: Auf Default zurücksetzen - Expression: param_button == "play" - Expression: mediaPlayer" - Expression: param_button == "stop" - Expression: param_screen=="off" - Expression: setScreenOnOff" - App Task läuft: App5 (neuster) - Expression: App5 - Expression: App4 - App Task läuft: App3 (neuster) - Expression: App3 - App Starten: App3 - App Starten: App4 - App Task läuft: App4 (neuster) - Expression: tuneinradio - App Task läuft: tuneinradio (neuster) - App Starten: tuneinradio - App Starten: App5 - App Task läuft: gplay (neuster) - Expression: gplay - App Starten: PlayMusic - Flow Aktiv: Informations - Expression: ttsMsg" - Schalte Display ein: Hell für 120s - Display automatisch drehen ein-/ausschalten: Aus - Display automatisch drehen ein-/ausschalten: Ein - Setze Alarm: um {param_hour}:{param_minute} - Expression: setScreenOrientation" - Expression: param_fullscreen == "off" - Expression: param_fullscreen == "on" - Expression: setBluetooth" - Sprachausgabe: {param_message} - Expression: param_bluetooth == "off" - Expression: param_bluetooth == "on" - Bluetooth ein-/ausschalten: Ein - Expression: openApp" - Setze Flow Status: Aktivieren Informations - Script: informationFlow_state = "inaktiv" - Bluetooth eingeschaltet - Bluetooth Gerät verbinden/trennen: Trennen Advanced Audio Distribution {param_btdeviceone} - Bluetooth Gerät verbinden/trennen: Trennen Eingabegerät {param_btdeviceone} - Bluetooth Gerät verbinden/trennen: Trennen Personal Area Network {param_btdeviceone} - Bluetooth Gerät verbinden/trennen: Trennen Advanced Audio Distribution {param_btdevicetwo} - Bluetooth Gerät verbinden/trennen: Trennen Eingabegerät {param_btdevicetwo} - Bluetooth Gerät verbinden/trennen: Trennen Headset {param_btdeviceone} - Bluetooth Gerät verbinden/trennen: Trennen Headset {param_btdevicetwo} - Bluetooth Gerät verbinden/trennen: Trennen Personal Area Network {param_btdevicetwo} - Pause: 3s (Gerät wach halten) - Bluetooth Gerät verbinden/trennen: Verbinden Advanced Audio Distribution {param_swtobtdevicemac} - Pause: 2s (Gerät wach halten) - Gerät sperren - Script: informationFlow_state = "aktiv" - Expression: setBTDevice" - Expression: openURL" - Audio Player steuern: Medienknopf Play (Google Play Musik) - Audio Player steuern: Medienknopf Weiter (Google Play Musik) - Audio Player steuern: Medienknopf Zurück (Google Play Musik) - StatusRequest - Bluetooth ein-/ausschalten: Aus - Audio Player steuern: Medienknopf Stopp (Google Play Musik) - HTTP Response SetCommand - Expression: setVolume" - Lautstärken setzen param_volume - Expression: trigger == "Sprachbefehl angefordert" - Expression: param_orientation == "portrait" - Setze Lock PIN/Passwort: PIN/Passwort zurücksetzen - Setze Lock PIN/Passwort: Setze PIN von Variable param_lockpin - Expression: Reboot - Expression: System Command" - Neustart - Expression: Shutdown - Herunterfahren - Sound: /storage/emulated/0/Notifications/{param_notifyfile} als Benachrichtigung - Benachrichtigung aus Statusbar entfernen: Alle - Benachrichtigung aus Statusbar entfernen: Alle (Automagic) - Expression: Automagic - Expression: All - Lautstärken setzen param_notifivolume - Expression: setNotifiVolume" - Expression: notifysnd" - NotificationLautstärke auf Level 7 - Notification Lautstärke Speichern - Expression: param_notifyfile == "RedAlert.mp3" - Notification Lautstärke Wiederherstellen - Expression: setVoiceCommand" - Flows ausführen: VoiceControl - Expression: setVibrate" - Vibrieren: Pattern 2 (-- --) - Expression: Clear Automagic Meldungen" - Flugmodus ein-/ausschalten: Ein - Expression: Airplanemode - Setze Display Helligkeit: {param_brightness} - Expression: param_lockmod == "lock" - Expression: setScreenlock" - Expression: trigger == "HTTP Request: /fhem-amad/setCommands/*" - Broadcast senden: {param_action} - Expression: sendIntent" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - VoiceControl - FHEM Info / Steuerung über AMAD Modul v1.2.0 - true - QUEUE - - Expression: value != "" - Spracheingabe wurde nicht erkannt - Benachrichtigung auf Bildschirm: {value} (lange) - Send Voice Input Value to AMADCommBridge - AMAD Voice Control - - - - - - - \ No newline at end of file diff --git a/74_AMADautomagicFlows_1.9.11.xml b/74_AMADautomagicFlows_1.9.11.xml new file mode 100644 index 0000000..58226f0 --- /dev/null +++ b/74_AMADautomagicFlows_1.9.11.xml @@ -0,0 +1,2535 @@ + + + + true + Akku Ladestand: grösser als 0% + true + 0 + HIGHER_THAN + true + true + + + true + App Task Beendet: {global_activetask} + true + {global_activetask} + + + true + App Task Gestartet: {global_activetask} + true + {global_activetask} + + + true + Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic + true + ch.gridvision.ppam.androidautomagic + TEXT + CONTAINS_TEXT + + false + false + + + true + Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic + true + ch.gridvision.ppam.androidautomagic + TEXT + CONTAINS_TEXT + + false + false + + + true + Bluetooth Status: Schaltet aus, Aus + true + false + false + true + true + + + true + Bluetooth Status: Schaltet ein, Ein + true + true + true + false + false + + + false + com.android.music.metachanged + true + com.android.music.metachanged + + + + + + + + global_artist = getString("artist"); +global_track = getString("track"); +global_album = getString("album"); + false + + + false + com.android.music.playstatechanged + true + com.android.music.playstatechanged + + + + + + + + global_artist = getString("artist"); +global_track = getString("track"); +global_album = getString("album"); + false + + + true + Daydream Status: Gestartet + true + true + + + true + Daydream Status: Gestoppt + true + false + + + true + Display Orientierung: Landscape + true + false + + + true + Display Orientierung: Portrait + true + true + + + true + Display Status: Aus + true + false + + + true + Display Status: Ein + true + true + + + true + Dock Event: Docked + true + true + + + true + Dock Event: Undocked + true + false + + + true + Flugmodus: Aus + true + false + + + false + HTTP Request: /fhem-amad/deviceInfo/ + true + /fhem-amad/deviceInfo/ + 8090 + true + + + false + HTTP Request: /fhem-amad/setCommands/* + true + /fhem-amad/setCommands/* + 8090 + true + + + true + Sprachbefehl angefordert + true + + + true + Stromversorgung: Angeschlossen + true + true + true + true + true + + + true + Stromversorgung: Entfernt + true + false + true + true + true + + + false + Systemeinstellung verändert: System next_alarm + true + SYSTEM + next_alarm_formatted + setting + + + true + Systemeinstellung verändert: System screen_brightness + true + SYSTEM + screen_brightness + screenBrightness + + + true + Systemeinstellung verändert: System volume_music_bt_a2dp + true + SYSTEM + volume_music_bt_a2dp + volume + + + true + Systemeinstellung verändert: System volume_music_speaker + true + SYSTEM + volume_music_speaker + volume + + + true + Systemeinstellung verändert: System volume_ring_speaker + true + SYSTEM + volume_ring_speaker + volumeNotification + + + false + App Task läuft: App3 (neuster) + + true + + + false + App Task läuft: App4 (neuster) + + true + + + false + App Task läuft: App5 (neuster) + + true + + + false + App Task läuft: gplay (neuster) + com.google.android.music + true + + + false + App Task läuft: tuneinradio (neuster) + tunein.player + true + + + true + App Task läuft: {global_activetask} (neuster) + {global_activetask} + true + + + false + Benachrichtigung in Statusbar angezeigt: Automagic + ch.gridvision.ppam.androidautomagic + true + 1 + TEXT + CONTAINS_TEXT + + false + false + + + true + Bluetooth eingeschaltet + + + true + Bluetooth Gerät verbunden: Beliebiges Geräte + true + + + ANY + + + true + Bluetooth Gerät verbunden: Beliebiges Geräte (Advanced Audio Distribution) + true + + + A2DP + + + true + Display automatisch drehen eingeschaltet + + + true + Display eingeschaltet + + + true + Display Orientierung: Portrait + true + + + true + Dock Status: Docked + true + true + true + true + true + false + + + true + Expression: airpcount < 11 + airpcount < 11 + + + true + Expression: airpcount < 6 + airpcount < 6 + + + false + Expression: Airplanemode + param_syscmd == "airplanemodeON" + + + false + Expression: All + param_app == "All" + + + false + Expression: App3 + param_app == "" + + + false + Expression: App4 + param_app == "" + + + false + Expression: App5 + param_app == "" + + + false + Expression: Automagic + param_app == "Automagic" + + + false + Expression: Clear Automagic Meldungen" + request_path == "/fhem-amad/setCommands/clearnotificationbar" + + + true + Expression: getAndroidSDKVersion() >= "19" + getAndroidSDKVersion() >= "19" + + + true + Expression: global_activetask != "none" + global_activetask != "none" + + + false + Expression: gplay + param_app == "gplay" + + + true + Expression: keyguard == "locked" + keyguard == "locked" + + + false + Expression: mediaPlayer" + request_path == "/fhem-amad/setCommands/mediaPlayer" + + + false + Expression: notifysnd" + request_path == "/fhem-amad/setCommands/playnotifysnd" + + + false + Expression: openApp" + request_path == "/fhem-amad/setCommands/openApp" + + + false + Expression: openURL" + request_path == "/fhem-amad/setCommands/openURL" + + + true + Expression: param_bluetooth == "off" + param_bluetooth == "off" + + + true + Expression: param_bluetooth == "on" + param_bluetooth == "on" + + + true + Expression: param_button == "back" + param_button == "back" + + + true + Expression: param_button == "next" + param_button == "next" + + + true + Expression: param_button == "play" + param_button == "play" + + + true + Expression: param_button == "stop" + param_button == "stop" + + + true + Expression: param_fullscreen == "off" + param_fullscreen == "off" + + + true + Expression: param_fullscreen == "on" + param_fullscreen == "on" + + + true + Expression: param_lockmod == "lock" + param_lockmod == "lock" + + + true + Expression: param_notifyfile == "RedAlert.mp3" + param_notifyfile == "RedAlert.mp3" + + + true + Expression: param_orientation == "auto" + param_orientation == "auto" + + + true + Expression: param_orientation == "landscape" + param_orientation == "landscape" + + + true + Expression: param_orientation == "portrait" + param_orientation == "portrait" + + + true + Expression: param_screen=="off" + param_screen=="off" + + + true + Expression: param_screen=="on" + param_screen=="on" + + + false + Expression: Reboot + param_syscmd == "reboot" + + + false + Expression: screenMsg" + request_path == "/fhem-amad/setCommands/screenMsg" + + + false + Expression: sendIntent" + request_path == "/fhem-amad/setCommands/sendIntent" + + + false + Expression: setAlarm" + request_path == "/fhem-amad/setCommands/setAlarm" + + + false + Expression: setBluetooth" + request_path == "/fhem-amad/setCommands/setbluetooth" + + + false + Expression: setBrightness" + request_path == "/fhem-amad/setCommands/setBrightness" + + + false + Expression: setBTDevice" + request_path == "/fhem-amad/setCommands/setbtdevice" + + + false + Expression: setNotifiVolume" + request_path == "/fhem-amad/setCommands/setNotifiVolume" + + + false + Expression: setScreenFullscreen" + request_path == "/fhem-amad/setCommands/setScreenFullscreen" + + + false + Expression: setScreenlock" + request_path == "/fhem-amad/setCommands/screenlock" + + + false + Expression: setScreenOnOff" + request_path == "/fhem-amad/setCommands/setScreenOnOff" + + + false + Expression: setScreenOrientation" + request_path == "/fhem-amad/setCommands/setScreenOrientation" + + + false + Expression: setVibrate" + request_path == "/fhem-amad/setCommands/setvibrate" + + + false + Expression: setVoiceCommand" + request_path == "/fhem-amad/setCommands/setvoicecmd" + + + false + Expression: setVolume" + request_path == "/fhem-amad/setCommands/setVolume" + + + false + Expression: Shutdown + param_syscmd == "shutdown" + + + false + Expression: System Command" + request_path == "/fhem-amad/setCommands/systemcommand" + + + true + Expression: trigger == "Akku Ladestand: grösser als 0%" + trigger == "Akku Ladestand: grösser als 0%" + + + true + Expression: trigger == "Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic" or trigger == "Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic" + trigger == "Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic" or trigger == "Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic" + + + true + Expression: trigger == "Bluetooth Gerät getrennt" or trigger == "Bluetooth Gerät verbunden" + trigger == "Bluetooth Gerät getrennt" or trigger == "Bluetooth Gerät verbunden" + + + true + Expression: trigger == "Bluetooth Status: Schaltet aus, Aus" or trigger == "Bluetooth Status: Schaltet ein, Ein" + trigger == "Bluetooth Status: Schaltet aus, Aus" or trigger == "Bluetooth Status: Schaltet ein, Ein" + + + true + Expression: trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" + trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" + + + true + Expression: trigger == "Daydream Status: Gestartet" + trigger == "Daydream Status: Gestartet" + + + true + Expression: trigger == "Daydream Status: Gestartet" or trigger == "Daydream Status: Gestoppt" + trigger == "Daydream Status: Gestartet" or trigger == "Daydream Status: Gestoppt" + + + true + Expression: trigger == "Display Orientierung: Landscape" or trigger == "Display Orientierung: Portrait" or trigger == "Display Status: Ein" or trigger == "Display Status: Aus" + trigger == "Display Orientierung: Landscape" or trigger == "Display Orientierung: Portrait" or trigger == "Display Status: Ein" or trigger == "Display Status: Aus" + + + true + Expression: trigger == "Display Status: Aus" or trigger == "Display Status: Ein" or udef_trigger == "setLockPin" + trigger == "Display Status: Aus" or trigger == "Display Status: Ein" or udef_trigger == "setLockPin" + + + true + Expression: trigger == "Flugmodus: Aus" + trigger == "Flugmodus: Aus" + + + true + Expression: trigger == "HTTP Request: /fhem-amad/deviceInfo/" + trigger == "HTTP Request: /fhem-amad/deviceInfo/" + + + true + Expression: trigger == "HTTP Request: /fhem-amad/setCommands/*" + trigger == "HTTP Request: /fhem-amad/setCommands/*" + + + true + Expression: trigger == "Sprachbefehl angefordert" + trigger == "Sprachbefehl angefordert" + + + true + Expression: trigger == "Systemeinstellung verändert: System next_alarm" + trigger == "Systemeinstellung verändert: System next_alarm" + + + true + Expression: trigger == "Systemeinstellung verändert: System screen_brightness" + trigger == "Systemeinstellung verändert: System screen_brightness" + + + true + Expression: trigger == "Systemeinstellung verändert: System volume_music_bt_a2dp" or trigger == "Systemeinstellung verändert: System volume_music_speaker" + trigger == "Systemeinstellung verändert: System volume_music_bt_a2dp" or trigger == "Systemeinstellung verändert: System volume_music_speaker" + + + true + Expression: trigger == "Systemeinstellung verändert: System volume_ring_speaker" + trigger == "Systemeinstellung verändert: System volume_ring_speaker" + + + false + Expression: ttsMsg" + request_path == "/fhem-amad/setCommands/ttsMsg" + + + false + Expression: tuneinradio + param_app == "tuneinradio" + + + true + Expression: udef_trigger == "setLockPin" + udef_trigger == "setLockPin" + + + true + Expression: value != "" + value != "" + + + true + Flow Aktiv: Informations + Informations + + + true + Flow Aktiv: SetCommands + SetCommands + + + true + Keyguard gesperrt + + + true + Keyguard mit Sicherheit + + + true + Musik Aktiv + + + true + Stromversorgung: Angeschlossen + true + true + true + true + + + true + WLAN Verbunden: Alle SSIDs + true + + + + true + WLAN Verbunden: {global_apssid} + false + {global_apssid} + + + false + Airplainemode + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + airplanemode@@{airplanemode}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + Airplainemode ON + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + airplanemode@@on@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + AMAD Voice Control + true + + true + de-DE + false + + + false + Android Version + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + androidVersion@@{androidVersion}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + App Starten: App3 + + + + + false + App Starten: App4 + + + + + false + App Starten: App5 + + + + + false + App Starten: PlayMusic + com.google.android.music + + + + false + App Starten: tuneinradio + tunein.player + + + + true + Audio Player steuern: Medienknopf Play (Google Play Musik) + true + TOGGLE_PAUSE + KEYCODE_MEDIA_PLAY + true + com.google.android.music + com.google.android.music.playback.MediaButtonIntentReceiver + Google Play Musik + + + true + Audio Player steuern: Medienknopf Stopp (Google Play Musik) + true + STOP + KEYCODE_MEDIA_STOP + true + com.google.android.music + com.google.android.music.playback.MediaButtonIntentReceiver + Google Play Musik + + + true + Audio Player steuern: Medienknopf Weiter (Google Play Musik) + true + LAUNCH + KEYCODE_MEDIA_NEXT + true + com.google.android.music + com.google.android.music.playback.MediaButtonIntentReceiver + Google Play Musik + + + true + Audio Player steuern: Medienknopf Zurück (Google Play Musik) + true + LAUNCH + KEYCODE_MEDIA_PREVIOUS + true + com.google.android.music + com.google.android.music.playback.MediaButtonIntentReceiver + Google Play Musik + + + false + Automagic State + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + automagicState@@{notification_text}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + true + Benachrichtigung auf Bildschirm: {param_message} (lange) + true + {param_message} + + 200 + 250 + false + 1.0 + true + false + TOP_LEFT + 0 + 0 + + + true + Benachrichtigung auf Bildschirm: {value} (lange) + true + {value} + + 200 + 250 + false + 1.0 + true + false + TOP_LEFT + 0 + 0 + + + true + Benachrichtigung aus Statusbar entfernen: Alle + false + true + 1 + true + + true + {id} + TEXT + CONTAINS_TEXT + + + + true + Benachrichtigung aus Statusbar entfernen: Alle (Automagic) + true + true + 1 + false + + true + {id} + TEXT + CONTAINS_TEXT + + + + false + Bluetooth Device Status + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + connectedBTdevices@@{connected_devices_names}@@@@connectedBTdevicesMAC@@{connected_devices_addresses}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + true + Bluetooth ein-/ausschalten: Aus + false + + + true + Bluetooth ein-/ausschalten: Ein + true + + + true + Bluetooth Gerät verbinden/trennen: Trennen Advanced Audio Distribution {param_btdeviceone} + A2DP + {param_btdeviceone} + + false + + + true + Bluetooth Gerät verbinden/trennen: Trennen Advanced Audio Distribution {param_btdevicetwo} + A2DP + {param_btdevicetwo} + + false + + + true + Bluetooth Gerät verbinden/trennen: Trennen Eingabegerät {param_btdeviceone} + INPUT_DEVICE + {param_btdeviceone} + + false + + + true + Bluetooth Gerät verbinden/trennen: Trennen Eingabegerät {param_btdevicetwo} + INPUT_DEVICE + {param_btdevicetwo} + + false + + + true + Bluetooth Gerät verbinden/trennen: Trennen Headset {param_btdeviceone} + HEADSET + {param_btdeviceone} + + false + + + true + Bluetooth Gerät verbinden/trennen: Trennen Headset {param_btdevicetwo} + HEADSET + {param_btdevicetwo} + + false + + + true + Bluetooth Gerät verbinden/trennen: Trennen Personal Area Network {param_btdeviceone} + PAN + {param_btdeviceone} + + false + + + true + Bluetooth Gerät verbinden/trennen: Trennen Personal Area Network {param_btdevicetwo} + PAN + {param_btdevicetwo} + + false + + + true + Bluetooth Gerät verbinden/trennen: Verbinden Advanced Audio Distribution {param_swtobtdevicemac} + A2DP + {param_swtobtdevicemac} + + true + + + false + Bluetooth Status + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + bluetooth@@{bluetooth_state}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + true + Broadcast senden: {param_action} + {param_action} + false + android.intent.category.DEFAULT + false + + false + text/plain + false + + + FLAG_ACTIVITY_NEW_TASK + putString("{param_exkey1}", "{param_exval1}"); +putString("{param_exkey2}", "{param_exval2}"); + false + + + + false + Check run Task + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + checkActiveTask@@{runTask}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + Daydream State + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + daydream@@{daydream_state}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + true + Display automatisch drehen ein-/ausschalten: Aus + false + + + true + Display automatisch drehen ein-/ausschalten: Ein + true + + + false + Dock State + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + dockingState@@{dock_state}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + Flow Status Informations + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + flow_informations@@{informationFlow_state}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + Flow Status SetCommands + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + flow_SetCommands@@{setCommandFlow_state}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + Flows ausführen: udef_trigger setLockPin + Informations + + false + true + false + + + true + Flows ausführen: VoiceControl + VoiceControl + + true + false + false + + + true + Flugmodus ein-/ausschalten: Ein + SYSTEM_SETTING + true + + + true + Gerät sperren + + + false + Get Android Version + + + + true + Herunterfahren + + + false + Initialisiere Variable Nächster Alarm: next_alarm + next_alarm + + + false + Initialisiere Variable Systemeinstellung: screenBrightness + SYSTEM + screen_brightness + screenBrightness + + + false + Initialisiere Variable Systemeinstellung: volumeMusikBluetooth.2 + SYSTEM + volume_music_bt_a2dp + volumeBT + + + false + Initialisiere Variable Systemeinstellung: volumeMusikSpeaker.2 + SYSTEM + volume_music_speaker + volumeSP + + + false + Initialisiere Variable Systemeinstellung: volumeNotification + SYSTEM + volume_ring_speaker + volumeNotification + + + false + KeyGuard Set + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + keyguardSet@@{keyguardSet}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + Lautstärke / Volume + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + volume@@{volume}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + Lautstärken setzen param_notifivolume + false + global_volume_alarm + false + global_volume_dtmf + false + param_volume + true + param_notifivolume + false + global_volume_ring + false + global_volume_system + false + global_volume_voice_call + false + global_ringer_mode + false + global_interruptions_mode + + + false + Lautstärken setzen param_volume + false + global_volume_alarm + false + global_volume_dtmf + true + param_volume + false + global_volume_notification + false + global_volume_ring + false + global_volume_system + false + global_volume_voice_call + false + global_ringer_mode + false + global_interruptions_mode + + + true + Neustart + + + + false + Notification Lautstärke Speichern + false + global_volume_alarm + false + global_volume_dtmf + false + global_volume_music + true + global_volume_notification + false + global_volume_ring + false + global_volume_system + false + global_volume_voice_call + false + global_ringer_mode + false + global_interruptions_mode + + + false + Notification Lautstärke Wiederherstellen + false + global_volume_alarm + false + global_volume_dtmf + false + param_volume + true + global_volume_notification + false + global_volume_ring + false + global_volume_system + false + global_volume_voice_call + false + global_ringer_mode + false + global_interruptions_mode + + + false + Notification Volume + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + volumeNotification@@{volumeNotification}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + NotificationLautstärke auf Level 7 + NOTIFICATION + 7 + false + false + + + false + Nächster Alarm + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + nextAlarmTime@@{next_alarmtime}@@@@nextAlarmDay@@{next_alarmday}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + true + Pause: 1s (Gerät wach halten) + 1s + true + false + + + true + Pause: 2s (Gerät wach halten) + 2s + true + false + + + true + Pause: 3s (Gerät wach halten) + 3s + true + false + + + false + Reading Music Metachanged.2 + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + currentMusicTrack@@{global_track}@@@@currentMusicAlbum@@{global_album}@@@@currentMusicArtist@@{global_artist}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + true + Schalte Display ein: Hell für 120s + true + 120s + true + + + false + Screen Brightness + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + screenBrightness@@{screenBrightness}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + Screen Orientation + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + screenOrientation@@{screen_orientation}@@@@screenOrientationMode@@{screen_orientation_mode}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + false + Screen State + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + screen@@{screen_state}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + true + Script: airpcount = 0 + + + + true + Script: airpcount = airpcount + 1 + + + + true + Script: airplanemode = "off" + + + + true + Script: androidVersion = "not supported funktion" + + + + true + Script: bluetooth_state = "off" + + + + true + Script: bluetooth_state = "on" + + + + true + Script: daydream_state = "off" + + + + true + Script: daydream_state = "on" + + + + true + Script: dock_state = "docked" + + + + true + Script: dock_state = "undocked" + + + + true + Script: global_artist = "no soundplayer activ"; global_track = "no soundplayer activ"; global_album = "no soundplayer activ"; + + + + true + Script: informationFlow_state = "aktiv" + + + + true + Script: informationFlow_state = "inaktiv" + + + + true + Script: keyguard = "locked" + + + + true + Script: keyguard = "unlocked" + + + + true + Script: keyguardSet = "0" + + + + true + Script: keyguardSet = "1" + + + + true + Script: next_alarmday = "{next_alarm,dateformat,c}" + + + + true + Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}" + + + + true + Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" + + + + true + Script: notification_text = "not supported from your device" + + + + true + Script: runTask = "0" + + + + true + Script: runTask = "1" + + + + true + Script: runTask = "not supported android version" + + + + true + Script: runTask = "null" + + + + true + Script: scrcount = 0 + + + + true + Script: screen_orientation = "landscape" + + + + true + Script: screen_orientation = "portrait" + + + + true + Script: screen_orientation_mode = "auto" + + + + true + Script: screen_orientation_mode = "manual" + + + + true + Script: screen_state = "off {keyguard}" + + + + true + Script: screen_state = "on {keyguard}" + + + + true + Script: setCommandFlow_state = "aktiv" + + + + true + Script: setCommandFlow_state = "inaktiv" + + + + true + Script: udef_trigger = "setLockPin" + + + + true + Script: volume = {volumeBT} + + + + true + Script: volume = {volumeSP} + + + + false + Send Voice Input Value to AMADCommBridge + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + {value} + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: voiceinputvalue + true + response + /storage/emulated/0/Download/file.bin + true + + + true + Setze Alarm: um {param_hour}:{param_minute} + + {param_hour} + {param_minute} + + + true + Setze Display Helligkeit: {param_brightness} + false + {param_brightness} + false + 50 + + + true + Setze Display Orientierung: Auf Default zurücksetzen + UNSPECIFIED + false + + + true + Setze Display Orientierung: Landscape + LANDSCAPE + false + + + true + Setze Display Orientierung: Portrait + PORTRAIT + false + + + true + Setze Flow Status: Aktivieren Informations + true + Informations + + + + true + Setze Flow Status: Aktivieren SetCommands + true + SetCommands + + + + false + Setze Globale Variablen + + + + true + Setze Lock PIN/Passwort: PIN/Passwort zurücksetzen + true + PIN + false + param_lockPIN + + + true + Setze Lock PIN/Passwort: Setze PIN von Variable param_lockpin + false + PIN + false + param_lockpin + + + true + Setze Vollbild Modus: Auf Default zurücksetzen + UNSPECIFIED + false + + + true + Setze Vollbild Modus: Navigation nicht anzeigen + HIDE_NAVIGATION + false + + + true + Sound: /storage/emulated/0/Notifications/{param_notifyfile} als Benachrichtigung + FILE + Lautlos + /storage/emulated/0/Notifications/{param_notifyfile} + NOTIFICATION + false + true + true + TRANSIENT + + + true + Sprachausgabe: {param_message} + MUSIC + {param_message} + de_DE + true + 1.0 + true + 1.0 + true + false + false + true + TRANSIENT + + + false + Spracheingabe wurde nicht erkannt + NOTIFICATION + Ihre Eingabe wurde nicht verstanden + de_DE + true + 1.0 + true + 1.0 + true + false + false + true + TRANSIENT + + + false + Stromversorgung und Akkustand + http://{global_fhemip}:8090 + false + false + + POST + GENERAL_TEXT + text/plain + powerLevel@@{battery_percentage}@@@@powerPlugged@@{battery_plugged}@@@@ + @@@@readingsNameXYZ@@readingsValueABC + 60000 + true + FHEMDEVICE: {global_fhemdevice} +FHEMCMD: setreading + true + response + /storage/emulated/0/Download/file.bin + false + + + true + URL in Browser öffnen: {param_url} (mit Chrome) + {param_url} + true + com.android.chrome + com.google.android.apps.chrome.Main + Chrome + + + true + Vibrieren: Pattern 2 (-- --) + false + vibrate_pattern_2 + 0,500 + + + Informations + FHEM Info / Steuerung über AMAD Modul v1.9.11 + true + PARALLEL + 500 + Nächster Alarm + Stromversorgung und Akkustand + Get Android Version + Script: androidVersion = "not supported funktion" + Android Version + Initialisiere Variable Systemeinstellung: volumeNotification + Stromversorgung: Angeschlossen + Setze Globale Variablen + Expression: trigger == "Daydream Status: Gestartet" + Daydream State + Script: setCommandFlow_state = "aktiv" + Flow Status SetCommands + Setze Flow Status: Aktivieren SetCommands + Script: setCommandFlow_state = "inaktiv" + Notification Volume + Bluetooth Status + Script: bluetooth_state = "off" + Script: bluetooth_state = "on" + Bluetooth eingeschaltet + Expression: trigger == "Bluetooth Status: Schaltet aus, Aus" or trigger == "Bluetooth Status: Schaltet ein, Ein" + Expression: trigger == "Bluetooth Gerät getrennt" or trigger == "Bluetooth Gerät verbunden" + Bluetooth Device Status + Flow Aktiv: SetCommands + Lautstärke / Volume + Initialisiere Variable Systemeinstellung: screenBrightness + Script: volume = {volumeBT} + Script: volume = {volumeSP} + Bluetooth Gerät verbunden: Beliebiges Geräte (Advanced Audio Distribution) + Initialisiere Variable Systemeinstellung: volumeMusikSpeaker.2 + Initialisiere Variable Systemeinstellung: volumeMusikBluetooth.2 + Script: daydream_state = "on" + Script: daydream_state = "off" + Bluetooth Gerät verbunden: Beliebiges Geräte + Script: next_alarmday = "{next_alarm,dateformat,c}" + Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}" + Initialisiere Variable Nächster Alarm: next_alarm + Screen Brightness + App Task läuft: {global_activetask} (neuster) + Expression: getAndroidSDKVersion() >= "19" + Script: runTask = "1" + Script: runTask = "0" + Script: runTask = "not supported android version" + Script: runTask = "null" + Check run Task + Expression: global_activetask != "none" + Expression: trigger == "Akku Ladestand: grösser als 0%" + Expression: trigger == "Daydream Status: Gestartet" or trigger == "Daydream Status: Gestoppt" + WLAN Verbunden: {global_apssid} + Expression: trigger == "Systemeinstellung verändert: System volume_ring_speaker" + Expression: trigger == "Systemeinstellung verändert: System volume_music_bt_a2dp" or trigger == "Systemeinstellung verändert: System volume_music_speaker" + Expression: trigger == "Systemeinstellung verändert: System next_alarm" + Expression: trigger == "Systemeinstellung verändert: System screen_brightness" + + Stromversorgung: Angeschlossen + App Task Gestartet: {global_activetask} + Bluetooth Status: Schaltet ein, Ein + Stromversorgung: Entfernt + Display Status: Aus + Display Orientierung: Portrait + Bluetooth Status: Schaltet aus, Aus + Daydream Status: Gestoppt + Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic + Systemeinstellung verändert: System volume_music_speaker + Systemeinstellung verändert: System screen_brightness + Display Status: Ein + Daydream Status: Gestartet + Akku Ladestand: grösser als 0% + Dock Event: Docked + com.android.music.playstatechanged + Systemeinstellung verändert: System volume_music_bt_a2dp + HTTP Request: /fhem-amad/deviceInfo/ + com.android.music.metachanged + Systemeinstellung verändert: System next_alarm + App Task Beendet: {global_activetask} + Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic + Dock Event: Undocked + Display Orientierung: Landscape + Flugmodus: Aus + Systemeinstellung verändert: System volume_ring_speaker + + Pause: 1s (Gerät wach halten) + Musik Aktiv + Script: global_artist = "no soundplayer activ"; global_track = "no soundplayer activ"; global_album = "no soundplayer activ"; + Reading Music Metachanged.2 + Expression: trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" + WLAN Verbunden: {global_apssid} + Script: airplanemode = "off" + Airplainemode + Expression: trigger == "Flugmodus: Aus" + Script: airpcount = 0 + Expression: trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Expression: airpcount < 11 + Script: airpcount = airpcount + 1 + Pause: 2s (Gerät wach halten) + Expression: trigger == "Display Status: Aus" or trigger == "Display Status: Ein" or udef_trigger == "setLockPin" + Script: scrcount = 0 + Keyguard gesperrt + Script: keyguard = "locked" + Script: keyguard = "unlocked" + Display eingeschaltet + Script: screen_state = "on {keyguard}" + Script: screen_state = "off {keyguard}" + Screen State + Expression: trigger == "Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic" or trigger == "Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic" + Expression: global_activetask != "none" + Expression: udef_trigger == "setLockPin" + Keyguard mit Sicherheit + Dock Status: Docked + Expression: getAndroidSDKVersion() >= "19" + Display Orientierung: Portrait + Script: screen_orientation = "portrait" + Script: screen_orientation = "landscape" + Display automatisch drehen eingeschaltet + Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" + Benachrichtigung in Statusbar angezeigt: Automagic + Script: notification_text = "not supported from your device" + Script: dock_state = "docked" + Script: dock_state = "undocked" + Script: keyguardSet = "1" + Script: keyguardSet = "0" + KeyGuard Set + Dock State + Automagic State + Screen Orientation + Script: screen_orientation_mode = "auto" + Script: screen_orientation_mode = "manual" + Expression: trigger == "Display Orientierung: Landscape" or trigger == "Display Orientierung: Portrait" or trigger == "Display Status: Ein" or trigger == "Display Status: Aus" + Pause: 2s (Gerät wach halten) + Script: airpcount = airpcount + 1 + Expression: keyguard == "locked" + Expression: airpcount < 6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SetCommands + FHEM Info / Steuerung über AMAD Modul v1.9.11 + true + QUEUE + 500 + + Akku Ladestand: grösser als 0% + Sprachbefehl angefordert + HTTP Request: /fhem-amad/deviceInfo/ + HTTP Request: /fhem-amad/setCommands/* + + Expression: param_screen=="on" + Expression: setBrightness" + Expression: setAlarm" + Expression: screenMsg" + URL in Browser öffnen: {param_url} (mit Chrome) + Benachrichtigung auf Bildschirm: {param_message} (lange) + Expression: setScreenFullscreen" + Expression: param_orientation == "auto" + Setze Display Orientierung: Portrait + Setze Display Orientierung: Landscape + Expression: param_orientation == "landscape" + Setze Vollbild Modus: Navigation nicht anzeigen + Setze Vollbild Modus: Auf Default zurücksetzen + Expression: param_button == "back" + Expression: param_button == "next" + Setze Display Orientierung: Auf Default zurücksetzen + Expression: param_button == "play" + Expression: mediaPlayer" + Expression: param_button == "stop" + Expression: param_screen=="off" + Expression: setScreenOnOff" + App Task läuft: App5 (neuster) + Expression: App5 + Expression: App4 + App Task läuft: App3 (neuster) + Expression: App3 + App Starten: App3 + App Starten: App4 + App Task läuft: App4 (neuster) + Expression: tuneinradio + App Task läuft: tuneinradio (neuster) + App Starten: tuneinradio + App Starten: App5 + App Task läuft: gplay (neuster) + Expression: gplay + App Starten: PlayMusic + Flow Aktiv: Informations + Expression: ttsMsg" + Schalte Display ein: Hell für 120s + Display automatisch drehen ein-/ausschalten: Aus + Display automatisch drehen ein-/ausschalten: Ein + Setze Alarm: um {param_hour}:{param_minute} + Expression: setScreenOrientation" + Expression: param_fullscreen == "off" + Expression: param_fullscreen == "on" + Expression: setBluetooth" + Sprachausgabe: {param_message} + Expression: param_bluetooth == "off" + Expression: param_bluetooth == "on" + Bluetooth ein-/ausschalten: Ein + Expression: openApp" + Script: informationFlow_state = "inaktiv" + Bluetooth eingeschaltet + Bluetooth Gerät verbinden/trennen: Trennen Advanced Audio Distribution {param_btdeviceone} + Bluetooth Gerät verbinden/trennen: Trennen Eingabegerät {param_btdeviceone} + Bluetooth Gerät verbinden/trennen: Trennen Personal Area Network {param_btdeviceone} + Bluetooth Gerät verbinden/trennen: Trennen Advanced Audio Distribution {param_btdevicetwo} + Bluetooth Gerät verbinden/trennen: Trennen Eingabegerät {param_btdevicetwo} + Bluetooth Gerät verbinden/trennen: Trennen Headset {param_btdeviceone} + Bluetooth Gerät verbinden/trennen: Trennen Headset {param_btdevicetwo} + Bluetooth Gerät verbinden/trennen: Trennen Personal Area Network {param_btdevicetwo} + Pause: 3s (Gerät wach halten) + Bluetooth Gerät verbinden/trennen: Verbinden Advanced Audio Distribution {param_swtobtdevicemac} + Pause: 2s (Gerät wach halten) + Gerät sperren + Expression: setBTDevice" + Expression: openURL" + Audio Player steuern: Medienknopf Play (Google Play Musik) + Audio Player steuern: Medienknopf Weiter (Google Play Musik) + Audio Player steuern: Medienknopf Zurück (Google Play Musik) + Bluetooth ein-/ausschalten: Aus + Audio Player steuern: Medienknopf Stopp (Google Play Musik) + Expression: setVolume" + Expression: param_orientation == "portrait" + Expression: Reboot + Expression: System Command" + Neustart + Expression: Shutdown + Herunterfahren + Sound: /storage/emulated/0/Notifications/{param_notifyfile} als Benachrichtigung + Benachrichtigung aus Statusbar entfernen: Alle + Benachrichtigung aus Statusbar entfernen: Alle (Automagic) + Expression: Automagic + Expression: All + Lautstärken setzen param_notifivolume + Expression: setNotifiVolume" + Expression: notifysnd" + NotificationLautstärke auf Level 7 + Notification Lautstärke Speichern + Expression: param_notifyfile == "RedAlert.mp3" + Notification Lautstärke Wiederherstellen + Expression: setVoiceCommand" + Flows ausführen: VoiceControl + Expression: setVibrate" + Vibrieren: Pattern 2 (-- --) + Expression: Clear Automagic Meldungen" + Flugmodus ein-/ausschalten: Ein + Setze Display Helligkeit: {param_brightness} + Expression: setScreenlock" + Broadcast senden: {param_action} + Expression: sendIntent" + Expression: trigger == "HTTP Request: /fhem-amad/setCommands/*" + WLAN Verbunden: Alle SSIDs + Expression: trigger == "Akku Ladestand: grösser als 0%" + Expression: trigger == "Sprachbefehl angefordert" + Flow Status Informations + Setze Flow Status: Aktivieren Informations + Script: informationFlow_state = "aktiv" + Expression: Airplanemode + Pause: 1s (Gerät wach halten) + Airplainemode ON + Expression: param_lockmod == "lock" + Setze Lock PIN/Passwort: PIN/Passwort zurücksetzen + Setze Lock PIN/Passwort: Setze PIN von Variable param_lockpin + Script: udef_trigger = "setLockPin" + Flows ausführen: udef_trigger setLockPin + Lautstärken setzen param_volume + Pause: 1s (Gerät wach halten) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + VoiceControl + FHEM Info / Steuerung über AMAD Modul v1.9.11 + true + QUEUE + 60 + + Expression: value != "" + Spracheingabe wurde nicht erkannt + Benachrichtigung auf Bildschirm: {value} (lange) + Send Voice Input Value to AMADCommBridge + AMAD Voice Control + + + + + + + \ No newline at end of file