From 6a40c9abbe7258de8ef5026364d92d773f4852d9 Mon Sep 17 00:00:00 2001 From: Marko Oldenburg Date: Tue, 27 Mar 2018 13:12:55 +0200 Subject: [PATCH] add new mediaPlayer Support, add takeScreenshot function --- 73_AMADCommBridge.pm | 2 +- 74_AMADDevice.pm | 78 +- ...0.xml => 74_AMADautomagicFlowset_4.2.1.xml | 1742 +++++++++-------- 3 files changed, 957 insertions(+), 865 deletions(-) rename 74_AMADautomagicFlowset_4.2.0.xml => 74_AMADautomagicFlowset_4.2.1.xml (81%) diff --git a/73_AMADCommBridge.pm b/73_AMADCommBridge.pm index 8c23ce8..3032f62 100755 --- a/73_AMADCommBridge.pm +++ b/73_AMADCommBridge.pm @@ -77,7 +77,7 @@ eval "use JSON;1" or $missingModul .= "JSON "; my $modulversion = "4.2.2"; -my $flowsetversion = "4.2.0"; +my $flowsetversion = "4.2.1"; diff --git a/74_AMADDevice.pm b/74_AMADDevice.pm index 27fb19d..7f387bc 100755 --- a/74_AMADDevice.pm +++ b/74_AMADDevice.pm @@ -60,8 +60,8 @@ eval "use JSON;1" or $missingModul .= "JSON "; -my $modulversion = "4.2.2"; -my $flowsetversion = "4.2.0"; +my $modulversion = "4.2.3"; +my $flowsetversion = "4.2.1"; @@ -126,6 +126,7 @@ sub AMADDevice_Initialize($) { "disable:1 ". "IODev ". "remoteServer:Automagic,Autoremote,TNES,other ". + "setTakeScreenshotResolution:1280x720,1920x1080,1920x1200 ". "setTakePictureResolution:800x600,1024x768,1280x720,1600x1200,1920x1080 ". "setTakePictureCamera:Back,Front ". $readingFnAttributes; @@ -187,7 +188,7 @@ sub AMADDevice_Define($$) { my $d = $modules{AMADDevice}{defptr}{$amad_id}; return "AMADDevice device $name on AMADCommBridge $iodev already defined." - if( defined($d) && $d->{IODev} == $hash->{IODev} && $d->{NAME} ne $name ); + if( defined($d) and $d->{IODev} == $hash->{IODev} and $d->{NAME} ne $name ); @@ -201,16 +202,7 @@ sub AMADDevice_Define($$) { Log3 $name, 3, "AMADDevice ($name) - defined with AMAD_ID: $amad_id on port $hash->{PORT}"; - - if( $init_done ) { - - InternalTimer( gettimeofday()+3, "AMADDevice_GetUpdate", $hash, 0 ) if( ($hash->{HOST}) ); - - } else { - - InternalTimer( gettimeofday()+15, "AMADDevice_GetUpdate", $hash, 0 ) if( ($hash->{HOST}) ); - } $modules{AMADDevice}{defptr}{$amad_id} = $hash; @@ -263,22 +255,15 @@ sub AMADDevice_Attr(@) { elsif( $attrName eq "disable" ) { if( $cmd eq "set" ) { if( $attrVal eq "0" ) { - - RemoveInternalTimer( $hash ); - InternalTimer( gettimeofday()+2, "AMADDevice_GetUpdate", $hash, 0 ) if( ReadingsVal( $hash->{NAME}, "state", 0 ) eq "disabled" ); readingsSingleUpdate ( $hash, "state", "active", 1 ); Log3 $name, 3, "AMADDevice ($name) - enabled"; } else { - + RemoveInternalTimer($hash); readingsSingleUpdate ( $hash, "state", "disabled", 1 ); - RemoveInternalTimer( $hash ); Log3 $name, 3, "AMADDevice ($name) - disabled"; } } else { - - RemoveInternalTimer( $hash ); - InternalTimer( gettimeofday()+2, "AMADDevice_GetUpdate", $hash, 0 ) if( ReadingsVal( $hash->{NAME}, "state", 0 ) eq "disabled" ); readingsSingleUpdate ( $hash, "state", "active", 1 ); Log3 $name, 3, "AMADDevice ($name) - enabled"; } @@ -290,12 +275,10 @@ sub AMADDevice_Attr(@) { } Log3 $name, 3, "AMADDevice ($name) - $cmd $attrName $attrVal and run statusRequest"; - RemoveInternalTimer( $hash ); - InternalTimer( gettimeofday(), "AMADDevice_GetUpdate", $hash, 0 ) } elsif( $attrName eq "setScreenlockPIN" ) { - if( $cmd eq "set" && $attrVal ) { + if( $cmd eq "set" and $attrVal ) { $attrVal = AMADDevice_encrypt($attrVal); @@ -312,14 +295,12 @@ sub AMADDevice_Attr(@) { } Log3 $name, 3, "AMADDevice ($name) - $cmd $attrName $attrVal and run statusRequest"; - RemoveInternalTimer( $hash ); - InternalTimer( gettimeofday(), "AMADDevice_GetUpdate", $hash, 0 ) } if( $cmd eq "set" ) { - if( $attrVal && $orig ne $attrVal ) { + if( $attrVal and $orig ne $attrVal ) { $attr{$name}{$attrName} = $attrVal; return $attrName ." set to ". $attrVal if( $init_done ); @@ -342,9 +323,22 @@ sub AMADDevice_Notify($$) { AMADDevice_statusRequest($hash) if( (grep /^DELETEATTR.$name.setAPSSID$/,@{$events} - or grep /^ATTR.$name.setAPSSID.*/,@{$events} ) + or grep /^ATTR.$name.setAPSSID.*/,@{$events} + or grep /^DELETEATTR.$name.checkActiveTask$/,@{$events} + or grep /^ATTR.$name.checkActiveTask.*/,@{$events} + or grep /^DELETEATTR.$name.setUserFlowState$/,@{$events} + or grep /^ATTR.$name.setUserFlowState.*/,@{$events}) and $init_done and $devname eq 'global' ); + AMADDevice_GetUpdate($hash) if( (grep /^DEFINED.$name$/,@{$events} + or grep /^INITIALIZED$/,@{$events} + or grep /^MODIFIED.$name$/,@{$events}) + and $devname eq 'global' and $init_done ); + + AMADDevice_checkDeviceState($hash) if( (grep /^DELETEATTR.$name.disable$/,@{$events} + or grep /^ATTR.$name.disable.0$/,@{$events}) + and $devname eq 'global' and $init_done ); + return; } @@ -354,8 +348,10 @@ sub AMADDevice_GetUpdate($) { my $name = $hash->{NAME}; my $bname = $hash->{IODev}->{NAME}; - - if( $init_done && ( ReadingsVal( $name, "deviceState", "unknown" ) eq "unknown" or ReadingsVal( $name, "deviceState", "online" ) eq "online" ) && AttrVal( $name, "disable", 0 ) ne "1" && ReadingsVal( $bname, "fhemServerIP", "not set" ) ne "not set" ) { + + RemoveInternalTimer( $hash ); + + if( $init_done and ( ReadingsVal( $name, "deviceState", "unknown" ) eq "unknown" or ReadingsVal( $name, "deviceState", "online" ) eq "online" ) and AttrVal( $name, "disable", 0 ) ne "1" and ReadingsVal( $bname, "fhemServerIP", "not set" ) ne "not set" ) { AMADDevice_statusRequest($hash); AMADDevice_checkDeviceState( $hash ); @@ -365,7 +361,7 @@ sub AMADDevice_GetUpdate($) { Log3 $name, 4, "AMADDevice ($name) - GetUpdate, FHEM or Device not ready yet"; Log3 $name, 3, "AMADDevice ($bname) - GetUpdate, Please set $bname fhemServerIP NOW!" if( ReadingsVal( $bname, "fhemServerIP", "none" ) eq "none" ); - InternalTimer( gettimeofday()+15, "AMADDevice_GetUpdate", $hash, 0 ); + InternalTimer( gettimeofday()+30, "AMADDevice_GetUpdate", $hash, 0 ); } } @@ -448,8 +444,8 @@ sub AMADDevice_WriteReadings($$) { ); } - readingsBulkUpdateIfChanged( $hash, "deviceState", "offline", 1 ) if( $decode_json->{payload}{airplanemode} && $decode_json->{payload}{airplanemode} eq "on" ); - readingsBulkUpdateIfChanged( $hash, "deviceState", "online", 1 ) if( $decode_json->{payload}{airplanemode} && $decode_json->{payload}{airplanemode} eq "off" ); + readingsBulkUpdateIfChanged( $hash, "deviceState", "offline", 1 ) if( $decode_json->{payload}{airplanemode} and $decode_json->{payload}{airplanemode} eq "on" ); + readingsBulkUpdateIfChanged( $hash, "deviceState", "online", 1 ) if( $decode_json->{payload}{airplanemode} and $decode_json->{payload}{airplanemode} eq "off" ); readingsBulkUpdateIfChanged( $hash, "lastStatusRequestState", "statusRequest_done", 1 ); @@ -481,7 +477,8 @@ sub AMADDevice_Set($$@) { my $path; my $method; - my @playerList = ('GoogleMusic','SamsungMusic','AmazonMusic','SpotifyMusic','TuneinRadio','AldiMusic','YouTube','YouTubeKids','VlcPlayer','Audible','Deezer'); + my @playerList = ('GoogleMusic','SamsungMusic','AmazonMusic','SpotifyMusic','TuneinRadio','AldiMusic','YouTube', + 'YouTubeKids','VlcPlayer','Audible','Deezer','Poweramp','MXPlayerPro'); my @playerCmd = ('mediaPlay','mediaStop','mediaNext','mediaBack'); my $volMax = AttrVal($name,'setVolMax',15); @@ -634,7 +631,7 @@ sub AMADDevice_Set($$@) { $path = "/fhem-amad/setCommands/systemcommand?syscmd=$systemcmd"; $method = "POST"; readingsSingleUpdate( $hash, "airplanemode", "on", 1 ) if( $systemcmd eq "airplanemodeON" ); - readingsSingleUpdate( $hash, "deviceState", "offline", 1 ) if( $systemcmd eq "airplanemodeON" || $systemcmd eq "shutdown" ); + readingsSingleUpdate( $hash, "deviceState", "offline", 1 ) if( $systemcmd eq "airplanemodeON" or $systemcmd eq "shutdown" ); } elsif( lc $cmd eq 'donotdisturb' ) { @@ -698,6 +695,15 @@ sub AMADDevice_Set($$@) { $method = "POST"; } + elsif( lc $cmd eq 'takescreenshot' ) { + + return "Please set \"setTakeScreenshotResolution\" Attribut first" + unless(AttrVal($name,'setTakeScreenshotResolution','none') ne 'none'); + + $path = "/fhem-amad/setCommands/takescreenshot?screenshotresolution=".AttrVal($name,'setTakeScreenshotResolution','none'); + $method = "POST"; + } + elsif( lc $cmd eq 'sendintent' ) { my $intentstring = join( " ", @args ); my ( $action, $exkey1, $exval1, $exkey2, $exval2 ) = split( "[ \t][ \t]*", $intentstring ); @@ -767,7 +773,7 @@ sub AMADDevice_Set($$@) { $list .= $_ . ':' . join(',',@playerList) . ' '; } - $list .= "screenMsg ttsMsg screenBrightness:slider,0,1,255 screen:on,off,lock,unlock openURL nextAlarmTime:time timer:slider,1,1,60 statusRequest:noArg bluetooth:on,off notifySndFile clearNotificationBar:All,Automagic activateVoiceInput:noArg vibrate:noArg sendIntent openCall closeCall:noArg currentFlowsetUpdate:noArg installFlowSource doNotDisturb:never,always,alarmClockOnly,onlyImportant userFlowState userFlowRun sendSMS startDaydream:noArg volumeUp:noArg volumeDown:noArg mute:on,off showHomeScreen:noArg takePicture:noArg"; + $list .= "screenMsg ttsMsg screenBrightness:slider,0,1,255 screen:on,off,lock,unlock openURL nextAlarmTime:time timer:slider,1,1,60 statusRequest:noArg bluetooth:on,off notifySndFile clearNotificationBar:All,Automagic activateVoiceInput:noArg vibrate:noArg sendIntent openCall closeCall:noArg currentFlowsetUpdate:noArg installFlowSource doNotDisturb:never,always,alarmClockOnly,onlyImportant userFlowState userFlowRun sendSMS startDaydream:noArg volumeUp:noArg volumeDown:noArg mute:on,off showHomeScreen:noArg takePicture:noArg takeScreenshot:noArg"; $list .= " screenOrientation:auto,landscape,portrait" if( AttrVal( $name, "setScreenOrientation", "0" ) eq "1" ); $list .= " screenFullscreen:on,off" if( AttrVal( $name, "setFullscreen", "0" ) eq "1" ); @@ -1155,6 +1161,7 @@ sub AMADDevice_CreateChangeBtDeviceValue($$) {
  • screenOrientation - Auto,Landscape,Portait, set screen orientation (automatic, horizontal, vertical). attribute setScreenOrientation
  • system - issue system command (only with rooted Android devices). reboot,shutdown,airplanemodeON (can only be switched ON) attribute root, in Automagic "Preferences" "Root functions" need to be enabled.
  • takePicture - take a camera picture Attribut setTakePictureResolution
  • +
  • takeScreenshot - take a Screenshot picture Attribut setTakeScreenshotResolution


  • @@ -1343,6 +1350,7 @@ sub AMADDevice_CreateChangeBtDeviceValue($$) {
  • screenOrientation - Auto,Landscape,Portait, aktiviert die Bildschirmausrichtung (Automatisch,Horizontal,Vertikal). Attribut setScreenOrientation (Tasker unterstützt nur Auto on/off)
  • system - setzt Systembefehle ab (nur bei gerootetet Geräen). reboot,shutdown,airplanemodeON (kann nur aktiviert werden) Attribut root, in den Automagic Einstellungen muss "Root Funktion" gesetzt werden
  • takePicture - löst die Kamera aus für ein Foto Attribut setTakePictureResolution
  • +
  • takeScreenshot - macht ein Screenshot Attribut setTakeScreenshotResolution


  • diff --git a/74_AMADautomagicFlowset_4.2.0.xml b/74_AMADautomagicFlowset_4.2.1.xml similarity index 81% rename from 74_AMADautomagicFlowset_4.2.0.xml rename to 74_AMADautomagicFlowset_4.2.1.xml index 68650c4..f2206c2 100644 --- a/74_AMADautomagicFlowset_4.2.0.xml +++ b/74_AMADautomagicFlowset_4.2.1.xml @@ -282,7 +282,7 @@ irname=getString("name") false Medien Session verändert true - com.amazon.mp3,com.audible.application,com.rhapsody.alditalk,com.sec.android.app.music,com.spotify.music,de.maxdome.app.android,com.google.android.videos,com.google.android.music,org.smblott.intentradioio,com.amazon.avod.thirdpartyclient,tunein.player,org.videolan.vlc,com.google.android.youtube,com.google.android.apps.youtube.kids,deezer.android.app + com.amazon.mp3,com.audible.application,com.rhapsody.alditalk,com.sec.android.app.music,com.spotify.music,de.maxdome.app.android,com.google.android.videos,com.google.android.music,org.smblott.intentradioio,com.amazon.avod.thirdpartyclient,tunein.player,org.videolan.vlc,com.google.android.youtube,com.google.android.apps.youtube.kids,deezer.android.app,com.maxmpz.audioplayer,com.mxtech.videoplayer.pro false @@ -880,6 +880,21 @@ irname=getString("name") Expression: param_screen=="on" param_screen=="on" + + true + Expression: param_screenshotresolution == "1280x720" + param_screenshotresolution == "1280x720" + + + true + Expression: param_screenshotresolution == "1920x1080" + param_screenshotresolution == "1920x1080" + + + true + Expression: param_screenshotresolution == "1920x1200" + param_screenshotresolution == "1920x1200" + false Expression: Reboot @@ -1020,6 +1035,11 @@ irname=getString("name") Expression: takepicture request_path == "/fhem-amad/setCommands/takepicture" + + false + Expression: takescreenshot + request_path == "/fhem-amad/setCommands/takescreenshot" + true Expression: togocount < 6 @@ -1515,6 +1535,24 @@ or trigger == "HTTP Request: /fhem-amad/deviceInfo/" CONTAINS_TEXT + + false + Bildschirmfoto aufnehmen: 1280x720 + HD_720P + /storage/emulated/0/AMADscreenshot.png + + + false + Bildschirmfoto aufnehmen: 1920x1080 + HD_FULL + /storage/emulated/0/AMADscreenshot.png + + + false + Bildschirmfoto aufnehmen: 1920x1200 + FULL + /storage/emulated/0/AMADscreenshot.png + true Bluetooth ein-/ausschalten: Aus @@ -2924,7 +2962,7 @@ else if(index == 1) true - Script: if(package_name == "com.google.android.music") { musicapp = "Google Musik" } else if(package_name == "com.amazon.mp3") { musicapp = "Amazon Musik" } else if(package_name == "com.google.android.videos") { musicapp = "Google Video" } else if(package_name == "com.spotify.music") { musicapp = "Spotify Musik" } else if(package_name == "com.google.android.youtube") { musicapp = "YouTube" } else if(package_name == "com.google.android.apps.youtube.kids") { musicapp = "YouTube Kids" } else if(package_name == "tunein.player") { musicapp = "TuneIn Player" } else if(package_name == "com.rhapsody.alditalk") { musicapp = "Aldi Life Musik" } else if(package_name == "org.videolan.vlc") { musicapp = "VLC Player" } else if(package_name == "com.sec.android.app.music") { musicapp = "Samsung Music Player" } else if(package_name == "deezer.android.app") { musicapp = "Deezer" } + Script: if(package_name == "com.google.android.music") { musicapp = "Google Musik" } else if(package_name == "com.amazon.mp3") { musicapp = "Amazon Musik" } else if(package_name == "com.google.android.videos") { musicapp = "Google Video" } else if(package_name == "com.spotify.music") { musicapp = "Spotify Musik" } else if(package_name == "com.google.android.youtube") { musicapp = "YouTube" } else if(package_name == "com.google.android.apps.youtube.kids") { musicapp = "YouTube Kids" } else if(package_name == "tunein.player") { musicapp = "TuneIn Player" } else if(package_name == "com.rhapsody.alditalk") { musicapp = "Aldi Life Musik" } else if(package_name == "org.videolan.vlc") { musicapp = "VLC Player" } else if(package_name == "com.sec.android.app.music") { musicapp = "Samsung Music Player" } else if(package_name == "deezer.android.app") { musicapp = "Deezer" } else if(package_name == "com.maxmpz.audioplayer") { musicapp = "Poweramp" } else if(package_name == "com.mxtech.videoplayer.pro") { musicapp = "MXPlayerPro" } @@ -3177,6 +3223,11 @@ fhemcmd = "setreading"; Script: notification_text = "Take Picture: can not save camerapicture, path does not exist" + + true + Script: notification_text = "Take Screenshot: can not save screenshot, path does not exist" + + true Script: powerinfo = "\"powerLevel\":" + " \"" + "{battery_percentage,numberformat,0}" + "\"" + "," + "\"powerPlugged\":" + " \"" + {battery_plugged} + "\"" + "," + "\"batteryTemperature\":" + " \"" + "{battery_temperature/10.0,numberformat.0.0}" + "\"" + "," + "\"batteryHealth\":" + " \"" + {battery_health} + "\""; fhemcmd = "setreading"; @@ -3290,7 +3341,7 @@ fhemcmd = "setreading"; false Script: Set FHEMDATA JSON - @@ -4001,7 +4064,7 @@ Soll der Assistent gelöscht werden? First Run Assistant - AMADNG Info/Control Flowset v4.2.0 + AMADNG Info/Control Flowset v4.2.1 false PARALLEL @@ -4174,184 +4237,11 @@ Soll der Assistent gelöscht werden? Informations - AMADNG Info/Control Flowset v4.2.0 + AMADNG Info/Control Flowset v4.2.1 true QUEUE 900 - Script: daydream_state = "on" - Script: daydream_state = "off" - Display Orientierung: Portrait - Script: screen_orientation = "portrait" - Script: screen_orientation = "landscape" - Script: dock_state = "docked" - Script: dock_state = "undocked" - Script: screen_orientation_mode = "manual" - Expression: scrcount < 5 - Script: scrcount = scrcount + 1 - Pause: 2s (Gerät wach halten) - Dock Status: Docked - Display automatisch drehen eingeschaltet - Expression: trigger == "Daydream Status: Gestartet" - Bluetooth eingeschaltet - Keyguard gesperrt - Expression: keyguard == "locked" - Expression: getAndroidSDKVersion() >= "16" - Display eingeschaltet - Display eingeschaltet - Expression: getAndroidSDKVersion() >= "16" - Unterbrechnungen-Modus: Nur Wecker (Android 6+) - Unterbrechnungen-Modus: Keine / Nicht unterbrechen - Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen - Unterbrechnungen-Modus: Alle / Immer unterbrechen - Script: dndValue = "always" - Script: dndValue = "onlyImportant" - Script: dndValue = "never" - Script: dndValue = "alarmClockOnly" - Script: screen_state = "off" - Script: screen_state = "on {keyguard}" - Script: screen_state = "off {keyguard}" - Script: airplanemode = "off" - Script: bluetooth_state = "on" - Script: androidVersion = "not supported funktion" - App Task läuft: {global_activetask} (neuster) - Script: runTask = "1" - Script: runTask = "0" - Expression: getAndroidSDKVersion() >= "19" - Script: runTask = "not supported android version" - Script: runTask = "null" - Expression: global_activetask != null - Expression: trigger == "Display Status: Aus" or trigger == "Display Status: Ein" or udef_trigger == "setLockPin" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Expression: trigger == "Daydream Status: Gestartet" or trigger == "Daydream Status: Gestoppt" - Expression: trigger == "Display Orientierung: Landscape" or trigger == "Display Orientierung: Portrait" or trigger == "Display Status: Ein" or trigger == "Display Status: Aus" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Expression: trigger == "Akku Ladestand: grösser als 0%" - Stromversorgung: Angeschlossen - Script: screen_orientation_mode = "auto" - Script: bluetooth_state = "off" - Keyguard mit Sicherheit - Expression: trigger == "Eingehender Anruf. Status: Klingelt, Nummern: Alle" - Expression: trigger == "Flugmodus: Aus" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Expression: trigger == "Systemeinstellung verändert: System screen_brightness" - Bluetooth Gerät verbunden: Beliebiges Geräte (Advanced Audio Distribution) - Script: volume = {volumeBT} - Pause: 2s (Gerät wach halten) - Musik Aktiv - Benachrichtigung auf Bildschirm: [AMAD2] Nicht mehr benötigte AMAD Flows wurden entfernt! (lange) - Expression: trigger == "Systemeinstellung verändert: System volume_music_bt_a2dp" or trigger == "Systemeinstellung verändert: System volume_music_speaker" or trigger == "Systemeinstellung verändert: System volume_music_headphone" or trigger == "Systemeinstellung verändert: System volume_music_headset" - Initialisiere Variable Systemeinstellung: volumeMusikBluetooth.2 - Script: volume = {volumeSP} - Initialisiere Variable Systemeinstellung: volumeMusikSpeaker.2 - Expression: trigger == "Unterbrechnungen-Modus: Alle / Immer unterbrechen" or trigger == "Unterbrechnungen-Modus: Keine / Nicht unterbrechen" or trigger == "Unterbrechnungen-Modus: Nur Wecker (Android 6+)" or trigger == "Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Expression: getAndroidSDKVersion() >= "21" - Script: airpcount = 0 - Host erreichbar: {global_fhemip}:{global_bridgeport} - WLAN Reassoziieren - Expression: global_fhemip != null or global_bridgeport != null - Expression: getAndroidSDKVersion() >= "19" - Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" - Script: notification_text = "not supported from your device" - Expression: trigger == "Benachrichtigung in Statusbar angezeigt: com.whatsapp" - Initialisiere Variable Systemeinstellung: screenBrightness - Initialisiere Variable Systemeinstellung: volumeNotification - Expression: trigger == "Medien Session verändert" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - WLAN verfügbar: {global_apssid} - Script: intentRadioState = "\"intentRadioState\":" + " \"" + {irstate} + "\"" + "," + "\"intentRadioName\":" + " \"" + {irname} + "\""; fhemcmd = "setreading"; - Script: dockingState = "\"dockingState\":" + " \"" + {dock_state} + "\""; fhemcmd = "setreading"; - Script: screenOrientation = "\"screenOrientation\":" + " \"" + {screen_orientation} + "\"" + "," + "\"screenOrientationMode\":" + " \"" + {screen_orientation_mode} + "\""; fhemcmd = "setreading"; - Script: screenBrightness = "\"screenBrightness\":" + " \"" + {screenBrightness} + "\""; fhemcmd = "setreading"; - Script: volumeNotification = "\"volumeNotification\":" + " \"" + {volumeNotification} + "\""; fhemcmd = "setreading"; - Script: airplanemode = "\"airplanemode\":" + " \"" + {airplanemode} + "\""; fhemcmd = "setreading"; - Script: checkActiveTask = "\"checkActiveTask\":" + " \"" + {runTask} + "\""; fhemcmd = "setreading"; - Expression: Leon == "Gaultier" - Flows löschen: MultimediaControl - Expression: trigger == "Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic" or trigger == "Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Expression: getAndroidSDKVersion() >= "19" - Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" - Benachrichtigung in Statusbar angezeigt: Automagic - Script: deviceState = "\"deviceState\": \"online\""; fhemcmd = "setreading"; - Expression: trigger == "Dock Event: Docked" or trigger == "Dock Event: Undocked" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Flows ausführen: Send Data to AMADCommBridge - Script: bluetooth = "\"bluetooth\":" + " \"" + {bluetooth_state} + "\""; fhemcmd = "setreading"; - Script: connected_devices_names = "none"; connected_devices_addresses = "none" - Script: btdeviceinfo = "\"connectedBTdevices\":" + " \"" + {connected_devices_names} + "\"" + "," + "\"connectedBTdevicesMAC\":" + " \"" + {connected_devices_addresses} + "\""; fhemcmd = "setreading"; - Bluetooth Gerät verbunden: Beliebiges Geräte - Expression: trigger == "Bluetooth Status: Schaltet aus, Aus" or trigger == "Bluetooth Gerät verbunden: Alle Geräte" or trigger == "Bluetooth Gerät getrennt: Alle Geräte" or trigger == "Bluetooth Status: Schaltet ein, Ein" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Script: flow_SetCommands = "\"flow_SetCommands\":" + " \"" + {setCommandFlow_state} + "\""; fhemcmd = "setreading"; - Setze Flow Status: Aktivieren SetCommands - Script: setCommandFlow_state = "aktiv" - Script: setCommandFlow_state = "inaktiv" - Flow Aktiv: SetCommands - Expression: trigger == "Periodischer Timer: alle 120s" - Expression: global_userflowstate != "none" - Flow Aktiv: {global_userflowstate} - Script: flowState = "inactive" - Script: flowState = "active" - Script: flow_informations = "\"userFlowState\":" + " \"" + {flowState} + "\""; fhemcmd = "setreading"; - Expression: trigger == "Periodischer Timer: alle 120s" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Flow Aktiv: Send Data to AMADCommBridge - Setze Flow Status: Aktivieren Send Data to AMADCommBridge - Expression: trigger == "Periodischer Timer: alle 120s" - Script: automagicState = "\"automagicState\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; - Pause: 2s (Gerät wach halten) - Script: airpcount = airpcount + 1 - Expression: airpcount < 11 - Script: notification_text = "not supported from your device" - Script: currentMusic = "\"currentMusicTrack\":" + " \"" + {title} + "\"" + "," + "\"currentMusicAlbum\":" + " \"" + {description} + "\"" + "," + "\"currentMusicArtist\":" + " \"" + {subtitle} + "\"" + "," + "\"currentMusicApp\":" + " \"" + {musicapp} + "\"" + "," + "\"currentMusicIcon\":" + " \"" + {icon} + "\"" + "," + "\"currentMusicState\":" + " \"" + {playback_state} + "\""; fhemcmd = "setreading"; - Script: volumevalue = "\"volume\":" + " \"" + {volume} + "\""; fhemcmd = "setreading"; - Script: nextAlarm = "\"nextAlarmTime\":" + " \"" + {next_alarmtime} + "\"" + "," + "\"nextAlarmDay\":" + " \"" + {next_alarmday} + "\""; fhemcmd = "setreading"; - Expression: trigger == "Systemeinstellung verändert: System volume_ring_speaker" - Expression: package_name == {global_activetask} - Expression: trigger == "Periodischer Timer: alle 120s" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Expression: trigger == "App Task Beendet" or trigger == "App Task Gestartet" - Expression: trigger == "App Task Gestartet" or trigger == "Periodischer Timer: alle 120s" - Expression: trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_ALERT" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DISMISS" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_SNOOZE" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Script: if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_ALERT") { nextalarmstate = "alert" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DISMISS") { nextalarmstate = "dismiss" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE") { nextalarmstate = "done" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_SNOOZE") { nextalarmstate = "snooze" } - Expression: trigger == "Systemeinstellung verändert: System next_alarm" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Initialisiere Variable Nächster Alarm: next_alarm - Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}" - Script: next_alarmday = "{next_alarm,dateformat,c}" - Script: volumeRingSound = "\"volumeRingSound\":" + " \"" + {volumeRingSound} + "\""; fhemcmd = "setreading"; - Script: wiredHeadsetPlugged = "\"wiredHeadsetPlugged\":" + " \"" + {headsetValue} + "\""; fhemcmd = "setreading"; - Expression: trigger == "Kabelgebundenes Headset Verbunden" or trigger == "Kabelgebundenes Headset Getrennt" - Expression: trigger == "Systemeinstellung verändert: System volume_ring" - Expression: trigger == "Genereller Broadcast: wenn org.smblott.intentradio.STATE" - Kabelgebundenes Headset verbunden - Script: headsetValue = 1 - Script: headsetValue = 0 - Initialisiere Variable Systemeinstellung: volumeRingSound - Script: subtitle = "no player active"; title = "no player active"; description = "no player active"; musicapp = "no player active"; icon = "no player active" - Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" - Benachrichtigung in Statusbar angezeigt: Telegram Messenger - Script: notification_text = "not supported from your device" - Expression: getAndroidSDKVersion() >= "19" - Expression: trigger == "Benachrichtigung in Statusbar angezeigt: org.telegram.messenger" - Host erreichbar: {global_fhemip}:{global_bridgeport} - Expression: trigger == "SMS Empfangen: Alle" - Script: nextAlarmState = "\"nextAlarmState\":" + " \"" + {nextalarmstate} + "\""; fhemcmd = "setreading"; - Script: doNotDisturb = "\"doNotDisturb\":" + " \"" + {dndValue} + "\""; fhemcmd = "setreading"; - Script: screen_state = "on" - Script: keyguard = "locked" - Script: keyguard = "unlocked" - Script: scrcount = 0 - Script: screen = "\"screen\":" + " \"" + {screen_state} + "\""; fhemcmd = "setreading"; - Script: keyguardset = "1" - Script: keyguardset = "0" - Expression: udef_trigger == "setLockPin" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Script: keyguardset = "not supported from your device" - Script: keyguardSet = "\"keyguardSet\":" + " \"" + {keyguardset} + "\""; fhemcmd = "setreading"; - Script: androidVersion = "\"androidVersion\":" + " \"" + {androidVersion} + "\""; fhemcmd = "setreading"; - Get Android Version - Script: powerinfo = "\"powerLevel\":" + " \"" + "{battery_percentage,numberformat,0}" + "\"" + "," + "\"powerPlugged\":" + " \"" + {battery_plugged} + "\"" + "," + "\"batteryTemperature\":" + " \"" + "{battery_temperature/10.0,numberformat.0.0}" + "\"" + "," + "\"batteryHealth\":" + " \"" + {battery_health} + "\""; fhemcmd = "setreading"; - Script: daydream = "\"daydream\":" + " \"" + {daydream_state} + "\""; fhemcmd = "setreading"; - Prüfe und setze globale Variable - Expression: trigger == "HTTP Request: /fhem-amad/deviceInfo/" and header_amadid == {global_amadid} - Script: if(playback_state == 0) { playback_state = "none" } else if(playback_state == 1) { playback_state = "stopped" } else if(playback_state == 2) { playback_state = "pause" } else if(playback_state == 3) { playback_state = "play" } else if(playback_state == 4) { playback_state = "fast forward" } else if(playback_state == 5) { playback_state = "fast backward" } else if(playback_state == 6) { playback_state = "buffert" } else if(playback_state == 7) { playback_state = "error" } else if(playback_state == 8) { playback_state = "connect" } else if(playback_state == 9) { playback_state = "skip forward" } else if(playback_state == 10) { playback_state = "skip backward" } else if(playback_state == 11) { playback_state = "jump to position in playlist" } - Script: if(package_name == "com.google.android.music") { musicapp = "Google Musik" } else if(package_name == "com.amazon.mp3") { musicapp = "Amazon Musik" } else if(package_name == "com.google.android.videos") { musicapp = "Google Video" } else if(package_name == "com.spotify.music") { musicapp = "Spotify Musik" } else if(package_name == "com.google.android.youtube") { musicapp = "YouTube" } else if(package_name == "com.google.android.apps.youtube.kids") { musicapp = "YouTube Kids" } else if(package_name == "tunein.player") { musicapp = "TuneIn Player" } else if(package_name == "com.rhapsody.alditalk") { musicapp = "Aldi Life Musik" } else if(package_name == "org.videolan.vlc") { musicapp = "VLC Player" } else if(package_name == "com.sec.android.app.music") { musicapp = "Samsung Music Player" } else if(package_name == "deezer.android.app") { musicapp = "Deezer" } - Benachrichtigung in Statusbar angezeigt: WhatsApp - Script: incomingCaller = "\"incomingCallerName\":" + " \"" + {contact_name} + "\"" + "," + "\"incomingCallerNumber\":" + " \"" + {incoming_number} + "\""; fhemcmd = "setreading"; - Script: incomingTelegramMessage = "\"incomingTelegramMessage\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; - Script: incomingWhatsAppMessage = "\"incomingWhatsAppMessage\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; - Script: incomingSmsMessage = "\"incomingSmsMessage\":" + " \"" + {sms_sender} + " - " + replaceAll({sms_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; - + Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE Kabelgebundenes Headset Verbunden Genereller Broadcast: wenn org.smblott.intentradio.STATE @@ -4399,260 +4289,433 @@ Soll der Assistent gelöscht werden? SMS Empfangen: Alle Medien Session verändert - + Script: daydream_state = "on" + Script: daydream_state = "off" + Display Orientierung: Portrait + Script: screen_orientation = "portrait" + Script: screen_orientation = "landscape" + Script: dock_state = "docked" + Script: dock_state = "undocked" + Script: screen_orientation_mode = "manual" + Expression: scrcount < 5 + Script: scrcount = scrcount + 1 + Pause: 2s (Gerät wach halten) + Dock Status: Docked + Display automatisch drehen eingeschaltet + Expression: trigger == "Daydream Status: Gestartet" + Bluetooth eingeschaltet + Keyguard gesperrt + Expression: keyguard == "locked" + Expression: getAndroidSDKVersion() >= "16" + Display eingeschaltet + Display eingeschaltet + Expression: getAndroidSDKVersion() >= "16" + Unterbrechnungen-Modus: Nur Wecker (Android 6+) + Unterbrechnungen-Modus: Keine / Nicht unterbrechen + Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen + Unterbrechnungen-Modus: Alle / Immer unterbrechen + Script: dndValue = "always" + Script: dndValue = "onlyImportant" + Script: dndValue = "never" + Script: dndValue = "alarmClockOnly" + Script: screen_state = "off" + Script: screen_state = "on {keyguard}" + Script: screen_state = "off {keyguard}" + Script: airplanemode = "off" + Script: bluetooth_state = "on" + Script: androidVersion = "not supported funktion" + App Task läuft: {global_activetask} (neuster) + Script: runTask = "1" + Script: runTask = "0" + Expression: getAndroidSDKVersion() >= "19" + Script: runTask = "not supported android version" + Script: runTask = "null" + Expression: global_activetask != null + Expression: trigger == "Display Status: Aus" or trigger == "Display Status: Ein" or udef_trigger == "setLockPin" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Expression: trigger == "Daydream Status: Gestartet" or trigger == "Daydream Status: Gestoppt" + Expression: trigger == "Display Orientierung: Landscape" or trigger == "Display Orientierung: Portrait" or trigger == "Display Status: Ein" or trigger == "Display Status: Aus" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Expression: trigger == "Akku Ladestand: grösser als 0%" + Stromversorgung: Angeschlossen + Script: screen_orientation_mode = "auto" + Script: bluetooth_state = "off" + Keyguard mit Sicherheit + Expression: trigger == "Eingehender Anruf. Status: Klingelt, Nummern: Alle" + Expression: trigger == "Flugmodus: Aus" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Expression: trigger == "Systemeinstellung verändert: System screen_brightness" + Bluetooth Gerät verbunden: Beliebiges Geräte (Advanced Audio Distribution) + Script: volume = {volumeBT} + Pause: 2s (Gerät wach halten) + Musik Aktiv + Benachrichtigung auf Bildschirm: [AMAD2] Nicht mehr benötigte AMAD Flows wurden entfernt! (lange) + Expression: trigger == "Systemeinstellung verändert: System volume_music_bt_a2dp" or trigger == "Systemeinstellung verändert: System volume_music_speaker" or trigger == "Systemeinstellung verändert: System volume_music_headphone" or trigger == "Systemeinstellung verändert: System volume_music_headset" + Initialisiere Variable Systemeinstellung: volumeMusikBluetooth.2 + Script: volume = {volumeSP} + Initialisiere Variable Systemeinstellung: volumeMusikSpeaker.2 + Expression: trigger == "Unterbrechnungen-Modus: Alle / Immer unterbrechen" or trigger == "Unterbrechnungen-Modus: Keine / Nicht unterbrechen" or trigger == "Unterbrechnungen-Modus: Nur Wecker (Android 6+)" or trigger == "Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Expression: getAndroidSDKVersion() >= "21" + Script: airpcount = 0 + Host erreichbar: {global_fhemip}:{global_bridgeport} + WLAN Reassoziieren + Expression: global_fhemip != null or global_bridgeport != null + Expression: getAndroidSDKVersion() >= "19" + Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" + Script: notification_text = "not supported from your device" + Expression: trigger == "Benachrichtigung in Statusbar angezeigt: com.whatsapp" + Initialisiere Variable Systemeinstellung: screenBrightness + Initialisiere Variable Systemeinstellung: volumeNotification + Expression: trigger == "Medien Session verändert" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + WLAN verfügbar: {global_apssid} + Script: intentRadioState = "\"intentRadioState\":" + " \"" + {irstate} + "\"" + "," + "\"intentRadioName\":" + " \"" + {irname} + "\""; fhemcmd = "setreading"; + Script: dockingState = "\"dockingState\":" + " \"" + {dock_state} + "\""; fhemcmd = "setreading"; + Script: screenOrientation = "\"screenOrientation\":" + " \"" + {screen_orientation} + "\"" + "," + "\"screenOrientationMode\":" + " \"" + {screen_orientation_mode} + "\""; fhemcmd = "setreading"; + Script: screenBrightness = "\"screenBrightness\":" + " \"" + {screenBrightness} + "\""; fhemcmd = "setreading"; + Script: volumeNotification = "\"volumeNotification\":" + " \"" + {volumeNotification} + "\""; fhemcmd = "setreading"; + Script: airplanemode = "\"airplanemode\":" + " \"" + {airplanemode} + "\""; fhemcmd = "setreading"; + Script: checkActiveTask = "\"checkActiveTask\":" + " \"" + {runTask} + "\""; fhemcmd = "setreading"; + Expression: Leon == "Gaultier" + Flows löschen: MultimediaControl + Expression: trigger == "Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic" or trigger == "Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Expression: getAndroidSDKVersion() >= "19" + Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" + Benachrichtigung in Statusbar angezeigt: Automagic + Script: deviceState = "\"deviceState\": \"online\""; fhemcmd = "setreading"; + Expression: trigger == "Dock Event: Docked" or trigger == "Dock Event: Undocked" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Flows ausführen: Send Data to AMADCommBridge + Script: bluetooth = "\"bluetooth\":" + " \"" + {bluetooth_state} + "\""; fhemcmd = "setreading"; + Script: connected_devices_names = "none"; connected_devices_addresses = "none" + Script: btdeviceinfo = "\"connectedBTdevices\":" + " \"" + {connected_devices_names} + "\"" + "," + "\"connectedBTdevicesMAC\":" + " \"" + {connected_devices_addresses} + "\""; fhemcmd = "setreading"; + Bluetooth Gerät verbunden: Beliebiges Geräte + Expression: trigger == "Bluetooth Status: Schaltet aus, Aus" or trigger == "Bluetooth Gerät verbunden: Alle Geräte" or trigger == "Bluetooth Gerät getrennt: Alle Geräte" or trigger == "Bluetooth Status: Schaltet ein, Ein" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Script: flow_SetCommands = "\"flow_SetCommands\":" + " \"" + {setCommandFlow_state} + "\""; fhemcmd = "setreading"; + Setze Flow Status: Aktivieren SetCommands + Script: setCommandFlow_state = "aktiv" + Script: setCommandFlow_state = "inaktiv" + Flow Aktiv: SetCommands + Expression: trigger == "Periodischer Timer: alle 120s" + Expression: global_userflowstate != "none" + Flow Aktiv: {global_userflowstate} + Script: flowState = "inactive" + Script: flowState = "active" + Script: flow_informations = "\"userFlowState\":" + " \"" + {flowState} + "\""; fhemcmd = "setreading"; + Expression: trigger == "Periodischer Timer: alle 120s" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Flow Aktiv: Send Data to AMADCommBridge + Setze Flow Status: Aktivieren Send Data to AMADCommBridge + Expression: trigger == "Periodischer Timer: alle 120s" + Script: automagicState = "\"automagicState\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; + Pause: 2s (Gerät wach halten) + Script: airpcount = airpcount + 1 + Expression: airpcount < 11 + Script: notification_text = "not supported from your device" + Script: currentMusic = "\"currentMusicTrack\":" + " \"" + {title} + "\"" + "," + "\"currentMusicAlbum\":" + " \"" + {description} + "\"" + "," + "\"currentMusicArtist\":" + " \"" + {subtitle} + "\"" + "," + "\"currentMusicApp\":" + " \"" + {musicapp} + "\"" + "," + "\"currentMusicIcon\":" + " \"" + {icon} + "\"" + "," + "\"currentMusicState\":" + " \"" + {playback_state} + "\""; fhemcmd = "setreading"; + Script: volumevalue = "\"volume\":" + " \"" + {volume} + "\""; fhemcmd = "setreading"; + Script: nextAlarm = "\"nextAlarmTime\":" + " \"" + {next_alarmtime} + "\"" + "," + "\"nextAlarmDay\":" + " \"" + {next_alarmday} + "\""; fhemcmd = "setreading"; + Expression: trigger == "Systemeinstellung verändert: System volume_ring_speaker" + Expression: package_name == {global_activetask} + Expression: trigger == "Periodischer Timer: alle 120s" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Expression: trigger == "App Task Beendet" or trigger == "App Task Gestartet" + Expression: trigger == "App Task Gestartet" or trigger == "Periodischer Timer: alle 120s" + Expression: trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_ALERT" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DISMISS" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE" or trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_SNOOZE" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Script: if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_ALERT") { nextalarmstate = "alert" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DISMISS") { nextalarmstate = "dismiss" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE") { nextalarmstate = "done" } if(trigger == "Genereller Broadcast: wenn com.android.deskclock.ALARM_SNOOZE") { nextalarmstate = "snooze" } + Expression: trigger == "Systemeinstellung verändert: System next_alarm" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Initialisiere Variable Nächster Alarm: next_alarm + Script: next_alarmtime = "{next_alarm,dateformat,HH:mm}" + Script: next_alarmday = "{next_alarm,dateformat,c}" + Script: volumeRingSound = "\"volumeRingSound\":" + " \"" + {volumeRingSound} + "\""; fhemcmd = "setreading"; + Script: wiredHeadsetPlugged = "\"wiredHeadsetPlugged\":" + " \"" + {headsetValue} + "\""; fhemcmd = "setreading"; + Expression: trigger == "Kabelgebundenes Headset Verbunden" or trigger == "Kabelgebundenes Headset Getrennt" + Expression: trigger == "Systemeinstellung verändert: System volume_ring" + Expression: trigger == "Genereller Broadcast: wenn org.smblott.intentradio.STATE" + Kabelgebundenes Headset verbunden + Script: headsetValue = 1 + Script: headsetValue = 0 + Initialisiere Variable Systemeinstellung: volumeRingSound + Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" + Benachrichtigung in Statusbar angezeigt: Telegram Messenger + Script: notification_text = "not supported from your device" + Expression: getAndroidSDKVersion() >= "19" + Expression: trigger == "Benachrichtigung in Statusbar angezeigt: org.telegram.messenger" + Host erreichbar: {global_fhemip}:{global_bridgeport} + Expression: trigger == "SMS Empfangen: Alle" + Script: nextAlarmState = "\"nextAlarmState\":" + " \"" + {nextalarmstate} + "\""; fhemcmd = "setreading"; + Script: doNotDisturb = "\"doNotDisturb\":" + " \"" + {dndValue} + "\""; fhemcmd = "setreading"; + Script: screen_state = "on" + Script: keyguard = "locked" + Script: keyguard = "unlocked" + Script: scrcount = 0 + Script: screen = "\"screen\":" + " \"" + {screen_state} + "\""; fhemcmd = "setreading"; + Script: keyguardset = "1" + Script: keyguardset = "0" + Expression: udef_trigger == "setLockPin" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Script: keyguardset = "not supported from your device" + Script: keyguardSet = "\"keyguardSet\":" + " \"" + {keyguardset} + "\""; fhemcmd = "setreading"; + Script: androidVersion = "\"androidVersion\":" + " \"" + {androidVersion} + "\""; fhemcmd = "setreading"; + Get Android Version + Script: powerinfo = "\"powerLevel\":" + " \"" + "{battery_percentage,numberformat,0}" + "\"" + "," + "\"powerPlugged\":" + " \"" + {battery_plugged} + "\"" + "," + "\"batteryTemperature\":" + " \"" + "{battery_temperature/10.0,numberformat.0.0}" + "\"" + "," + "\"batteryHealth\":" + " \"" + {battery_health} + "\""; fhemcmd = "setreading"; + Script: daydream = "\"daydream\":" + " \"" + {daydream_state} + "\""; fhemcmd = "setreading"; + Prüfe und setze globale Variable + Expression: trigger == "HTTP Request: /fhem-amad/deviceInfo/" and header_amadid == {global_amadid} + Benachrichtigung in Statusbar angezeigt: WhatsApp + Script: incomingCaller = "\"incomingCallerName\":" + " \"" + {contact_name} + "\"" + "," + "\"incomingCallerNumber\":" + " \"" + {incoming_number} + "\""; fhemcmd = "setreading"; + Script: incomingTelegramMessage = "\"incomingTelegramMessage\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; + Script: incomingWhatsAppMessage = "\"incomingWhatsAppMessage\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; + Script: incomingSmsMessage = "\"incomingSmsMessage\":" + " \"" + {sms_sender} + " - " + replaceAll({sms_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; + Script: if(package_name == "com.google.android.music") { musicapp = "Google Musik" } else if(package_name == "com.amazon.mp3") { musicapp = "Amazon Musik" } else if(package_name == "com.google.android.videos") { musicapp = "Google Video" } else if(package_name == "com.spotify.music") { musicapp = "Spotify Musik" } else if(package_name == "com.google.android.youtube") { musicapp = "YouTube" } else if(package_name == "com.google.android.apps.youtube.kids") { musicapp = "YouTube Kids" } else if(package_name == "tunein.player") { musicapp = "TuneIn Player" } else if(package_name == "com.rhapsody.alditalk") { musicapp = "Aldi Life Musik" } else if(package_name == "org.videolan.vlc") { musicapp = "VLC Player" } else if(package_name == "com.sec.android.app.music") { musicapp = "Samsung Music Player" } else if(package_name == "deezer.android.app") { musicapp = "Deezer" } else if(package_name == "com.maxmpz.audioplayer") { musicapp = "Poweramp" } else if(package_name == "com.mxtech.videoplayer.pro") { musicapp = "MXPlayerPro" } + Script: subtitle = "no player active"; title = "no player active"; description = "no player active"; musicapp = "no player active"; icon = "no player active" + Script: if(playback_state == 0) { playback_state = "none" } else if(playback_state == 1) { playback_state = "stopped" } else if(playback_state == 2) { playback_state = "pause" } else if(playback_state == 3) { playback_state = "play" } else if(playback_state == 4) { playback_state = "fast forward" } else if(playback_state == 5) { playback_state = "fast backward" } else if(playback_state == 6) { playback_state = "buffert" } else if(playback_state == 7) { playback_state = "error" } else if(playback_state == 8) { playback_state = "connect" } else if(playback_state == 9) { playback_state = "skip forward" } else if(playback_state == 10) { playback_state = "skip backward" } else if(playback_state == 11) { playback_state = "jump to position in playlist" } + - - - - - - + + + + + + - - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - + + + + + + + + - - - + + - - - + + + + + + + + + + - - - - - - - - - - - - + + + + + - - - + + + - - - - + + + + - + - - - + + + - - - - + + + + + + - - - + - - - - - - - - - - - + + + + + + + + + + + NFC Tag Support - AMADNG Info/Control Flowset v4.2.0 + AMADNG Info/Control Flowset v4.2.1 true PARALLEL @@ -4666,7 +4729,7 @@ Soll der Assistent gelöscht werden? Send Data to AMADCommBridge - AMADNG Info/Control Flowset v4.2.0 + AMADNG Info/Control Flowset v4.2.1 true PARALLEL 900 @@ -4704,10 +4767,10 @@ Soll der Assistent gelöscht werden? HTTP Request: send VOICEINPUTVALUE data to AMADCommBridge Expression: fhemcmd == "setreading" Script: Set FHEMDATA JSON First Run Assistant - Script: Set FHEMSETCMD JSON - Script: Set FHEMDATA JSON + Script: Set FHEMDATA JSON + Script: Set FHEMSETCMD JSON - + @@ -4733,453 +4796,474 @@ Soll der Assistent gelöscht werden? - + - - + + SetCommands - AMADNG Info/Control Flowset v4.2.0 + AMADNG Info/Control Flowset v4.2.1 true QUEUE 900 - Expression: setBrightness" - 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 - Setze Display Orientierung: Auf Default zurücksetzen - Display automatisch drehen ein-/ausschalten: Aus - Display automatisch drehen ein-/ausschalten: Ein - Expression: setScreenOrientation" - Expression: param_fullscreen == "off" - Expression: param_bluetooth == "off" - Expression: param_bluetooth == "on" - Bluetooth ein-/ausschalten: Ein - 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) - Expression: setBTDevice" - Bluetooth ein-/ausschalten: Aus - Expression: param_orientation == "portrait" - Expression: setVoiceCommand" - Setze Display Helligkeit: {param_brightness} - Expression: setScreenlock" - Expression: sendIntent" - Setze Lock PIN/Passwort: Setze PIN von Variable param_lockpin - Expression: setAlarm" - Expression: screenMsg" - Benachrichtigung auf Bildschirm: {param_message} (lange) - Script: udef_trigger = "setLockPin" - Display eingeschaltet - Gerät sperren - Schalte Display ein - Gerät sperren - Expression: setTimer" - Expression: param_option - Pause: {param_hanguptime}s (Gerät wach halten) - Anruf beenden - Broadcast senden: {param_action} - URL in Browser öffnen: {param_url} (mit {param_browserapp}/{param_browserappclass}) - Setze Unterbrechnungen-Modus: Alle / Immer unterbrechen - Setze Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen - Setze Unterbrechnungen-Modus: Keine / Nicht unterbrechen - Setze Unterbrechnungen-Modus: Nur Wecker (Android 6+) - Expression: openURL" - Expression: param_fullscreen == "on" - Expression: do not Disturb" - Expression: param_disturbmod == "always" - Expression: param_disturbmod == "onlyImportant" - Expression: param_disturbmod == "never" - Expression: param_disturbmod == "alarmClockOnly" - Expression: setBluetooth" - Expression: param_screen=="on" - Expression: setScreenOnOff" - Gerät sperren - Expression: param_screen=="off" - Expression: openApp" - App Task läuft: App (neuster) - Expression: setVolume" - App Starten: App - Dateien löschen: /storage/emulated/0/Download/installFlow_{param_flowname} - Dateien löschen: /storage/sdcard0/Download/installFlow_{param_flowname} - Dateien löschen: /storage/sdcard0/Download/installFlow_{param_flowname} - Script: notification_text = "Flow install: path for download not exist" - Flows/Widgets importieren: /storage/sdcard0/Download/installFlow_{param_flowname} - Setze Flow Status: Aktivieren {imported_flow_names,listformat,comma} - Download URL: http://{global_fhemip}:{global_bridgeport}/installFlow_{param_flowname} to /storage/sdcard0/Download - Download URL: http://{global_fhemip}:{global_bridgeport}/installFlow_{param_flowname} to /storage/sdcard0/Download - Flows/Widgets importieren: /storage/emulated/0/Download/installFlow_{param_flowname} - Flows/Widgets importieren: /storage/sdcard0/Download/installFlow_{param_flowname} - Setze Flow Status: Aktivieren {imported_flow_names,listformat,comma} - Gerätespeicherplatz: Freier Speicherplatz > 1kb (/storage/sdcard0) - Gerätespeicherplatz: Freier Speicherplatz > 1kb (/sdcard) - Expression: installFlow" - Neustart - Expression: Reboot - Expression: System Command" - Expression: Shutdown - Script: airplanemode = "airplanemode@@on"; fhemcmd = "setreading"; - Flows ausführen: Send Data to AMADCommBridge mit warten - Flugmodus ein-/ausschalten: Ein - Herunterfahren - Notification Lautstärke Wiederherstellen - Expression: param_notifyfile == "RedAlert.mp3" - Benachrichtigung aus Statusbar entfernen: Alle - Benachrichtigung aus Statusbar entfernen: Alle (Automagic) - Expression: Automagic - Expression: All - Expression: notifysnd" - NotificationLautstärke auf Level 7 - Notification Lautstärke Speichern - Expression: param_notifyfile == "RedAlert.mp3" - Setze Flow Status: Aktivieren {imported_flow_names,listformat,comma} - Expression: Clear Automagic Meldungen" - Expression: setVibrate" - Audio Player steuern: Medienknopf Zurück ({pname}/{kname}) - Schalte Display ein: Hell für {param_screenontime}s - Setze Alarm: um {param_hour}:{param_minute} - Audio Player steuern: Medienknopf Weiter ({pname}/{kname}) - Expression: openCall" - Nummer anrufen: {param_callnumber} - Expression: param_flowstate == "active" or param_flowstate == "inactive" - Expression: param_flowstate == "active" - Setze Flow Status: Deaktivieren {param_flowname} - Script: notification_text = "Flow '{param_flowname}' has been set {param_flowstate}" - Expression: multimediaControl" - Starte Daydream - Expression: startDaydream" - Lautstärken setzen param_volume - Expression: setNotifiVolume" - Lautstärken setzen param_notifivolume - Audio Player steuern: Medienknopf Play/Pause (/{kname}) - Sound: {param_notifypath}{param_notifyfile} als Benachrichtigung - Gerätespeicherplatz: Freier Speicherplatz > 1kb (/storage/emulated/0) - Download URL: http://{global_fhemip}:{global_bridgeport}/installFlow_{param_flowname} to /storage/emulated/0/Download - Script: flow_informations = "\"flow_informations\":" + " \"" + {informationFlow_state} + "\""; fhemcmd = "setreading"; - Script: automagicState = "\"automagicState\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; - Flows ausführen: udef_trigger setLockPin - Flow Aktiv: Informations - Script: informationFlow_state = "aktiv" - Script: informationFlow_state = "inaktiv" - Setze Flow Status: Aktivieren Informations - Flow Aktiv: Send Data to AMADCommBridge - Setze Flow Status: Aktivieren Send Data to AMADCommBridge - SMS senden an: an {param_smsnumber} '{param_smsmessage}' (10 in 12h) - Expression: param_lockmod == "lock" - Expression: Airplanemode - Expression: param_nfc == "on" - Expression: param_nfc == "off" - NFC ein-/ausschalten: Aus - Expression: sendSms" - Expression: closeCall" - Expression: nfc" - NFC ein-/ausschalten: Ein - Expression: setRingSoundVolume" - Lautstärken setzen param_ringsoundvolume - Setze Timer - Expression: ttsMsg" - Expression: ttsMsgLang" - Medianlautstärken Speichern - Lautstärke einstellen: Medien auf Level {param_msgvol} - Expression: param_msgvol == "none" - Sprachausgabe: Englisch - Sprachausgabe: Deutsch - Expression: param_msgvol == "none" - Medienlautstärke Wiederherstellen - Expression: flowState" - Setze Flow Status: Aktivieren {param_flowname} - Flows ausführen: VoiceControl - Setze Lock PIN/Passwort: PIN/Passwort zurücksetzen - Expression: showhomescreen" - Zeige Home Screen - Vibrieren: Pattern 2 (-- --) - Flows ausführen: Send Data to AMADCommBridge - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 800x600 - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1024x768 - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1280x720 - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1600x1200 - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1920x1080 - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1920x1080 Front - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1600x1200 Front - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1024x768 Front - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 800x600 Front - Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1280x720 Front - Expression: param_pictureresolution == "800x600" - Expression: param_pictureresolution == "1024x768" - Expression: param_pictureresolution == "1280x720" - Expression: param_pictureresolution == "1600x1200" - Expression: param_pictureresolution == "1920x1080" - Expression: param_picturecamera == "Back" - Expression: param_picturecamera == "Back" - Expression: param_picturecamera == "Back" - Expression: param_picturecamera == "Back" - Expression: param_picturecamera == "Back" - Script: automagicState = "\"automagicState\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; - Expression: takepicture - Gerätespeicherplatz: Freier Speicherplatz > 1kb (/storage/emulated/0) - Script: automagicState = "\"automagicState\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; - Script: notification_text = "Take Picture: can not save camerapicture, path does not exist" - Expression: flowRun" - Flows ausführen: {param_flowname} - Flows ausführen: Update AMAD Flowset - Expression: trigger == "HTTP Request: /fhem-amad/setCommands/*" - Expression: currentFlowsetUpdate" - Audio Player steuern: Medienknopf Stopp ({pname}/{kname}) - Expression: param_button == "mediaStop" - Expression: param_button == "mediaPlay" - Expression: param_button == "mediaNext" - Expression: param_button == "mediaBack" - Script: Zuordnung Mediaplayer - Expression: trigger == "Sprachbefehl angefordert" - Expression: global_fhemip != null or global_bridgeport != null - + HTTP Request: /fhem-amad/deviceInfo/ Sprachbefehl angefordert HTTP Request: /fhem-amad/setCommands/* Periodischer Timer: alle 120s - Host erreichbar: {global_fhemip}:{global_bridgeport} - Expression: header_amadid == {global_amadid} - - - - - - - - - - - - - - - - - + Expression: setBrightness" + 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 + Setze Display Orientierung: Auf Default zurücksetzen + Display automatisch drehen ein-/ausschalten: Aus + Display automatisch drehen ein-/ausschalten: Ein + Expression: setScreenOrientation" + Expression: param_fullscreen == "off" + Expression: param_bluetooth == "off" + Expression: param_bluetooth == "on" + Bluetooth ein-/ausschalten: Ein + 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) + Expression: setBTDevice" + Bluetooth ein-/ausschalten: Aus + Expression: param_orientation == "portrait" + Expression: setVoiceCommand" + Setze Display Helligkeit: {param_brightness} + Expression: setScreenlock" + Expression: sendIntent" + Setze Lock PIN/Passwort: Setze PIN von Variable param_lockpin + Expression: setAlarm" + Expression: screenMsg" + Benachrichtigung auf Bildschirm: {param_message} (lange) + Script: udef_trigger = "setLockPin" + Display eingeschaltet + Gerät sperren + Schalte Display ein + Gerät sperren + Expression: setTimer" + Expression: param_option + Pause: {param_hanguptime}s (Gerät wach halten) + Anruf beenden + Broadcast senden: {param_action} + URL in Browser öffnen: {param_url} (mit {param_browserapp}/{param_browserappclass}) + Setze Unterbrechnungen-Modus: Alle / Immer unterbrechen + Setze Unterbrechnungen-Modus: Wichtig / Nur wichtige Unterbrechnungen zulassen + Setze Unterbrechnungen-Modus: Keine / Nicht unterbrechen + Setze Unterbrechnungen-Modus: Nur Wecker (Android 6+) + Expression: openURL" + Expression: param_fullscreen == "on" + Expression: do not Disturb" + Expression: param_disturbmod == "always" + Expression: param_disturbmod == "onlyImportant" + Expression: param_disturbmod == "never" + Expression: param_disturbmod == "alarmClockOnly" + Expression: setBluetooth" + Expression: param_screen=="on" + Expression: setScreenOnOff" + Gerät sperren + Expression: param_screen=="off" + Expression: openApp" + App Task läuft: App (neuster) + Expression: setVolume" + App Starten: App + Dateien löschen: /storage/emulated/0/Download/installFlow_{param_flowname} + Dateien löschen: /storage/sdcard0/Download/installFlow_{param_flowname} + Dateien löschen: /storage/sdcard0/Download/installFlow_{param_flowname} + Script: notification_text = "Flow install: path for download not exist" + Flows/Widgets importieren: /storage/sdcard0/Download/installFlow_{param_flowname} + Setze Flow Status: Aktivieren {imported_flow_names,listformat,comma} + Download URL: http://{global_fhemip}:{global_bridgeport}/installFlow_{param_flowname} to /storage/sdcard0/Download + Download URL: http://{global_fhemip}:{global_bridgeport}/installFlow_{param_flowname} to /storage/sdcard0/Download + Flows/Widgets importieren: /storage/emulated/0/Download/installFlow_{param_flowname} + Flows/Widgets importieren: /storage/sdcard0/Download/installFlow_{param_flowname} + Setze Flow Status: Aktivieren {imported_flow_names,listformat,comma} + Gerätespeicherplatz: Freier Speicherplatz > 1kb (/storage/sdcard0) + Gerätespeicherplatz: Freier Speicherplatz > 1kb (/sdcard) + Expression: installFlow" + Neustart + Expression: Reboot + Expression: System Command" + Expression: Shutdown + Script: airplanemode = "airplanemode@@on"; fhemcmd = "setreading"; + Flows ausführen: Send Data to AMADCommBridge mit warten + Flugmodus ein-/ausschalten: Ein + Herunterfahren + Notification Lautstärke Wiederherstellen + Expression: param_notifyfile == "RedAlert.mp3" + Benachrichtigung aus Statusbar entfernen: Alle + Benachrichtigung aus Statusbar entfernen: Alle (Automagic) + Expression: Automagic + Expression: All + Expression: notifysnd" + NotificationLautstärke auf Level 7 + Notification Lautstärke Speichern + Expression: param_notifyfile == "RedAlert.mp3" + Setze Flow Status: Aktivieren {imported_flow_names,listformat,comma} + Expression: Clear Automagic Meldungen" + Expression: setVibrate" + Audio Player steuern: Medienknopf Zurück ({pname}/{kname}) + Schalte Display ein: Hell für {param_screenontime}s + Setze Alarm: um {param_hour}:{param_minute} + Audio Player steuern: Medienknopf Weiter ({pname}/{kname}) + Expression: openCall" + Nummer anrufen: {param_callnumber} + Expression: param_flowstate == "active" or param_flowstate == "inactive" + Expression: param_flowstate == "active" + Setze Flow Status: Deaktivieren {param_flowname} + Script: notification_text = "Flow '{param_flowname}' has been set {param_flowstate}" + Expression: multimediaControl" + Starte Daydream + Expression: startDaydream" + Lautstärken setzen param_volume + Expression: setNotifiVolume" + Lautstärken setzen param_notifivolume + Audio Player steuern: Medienknopf Play/Pause (/{kname}) + Sound: {param_notifypath}{param_notifyfile} als Benachrichtigung + Gerätespeicherplatz: Freier Speicherplatz > 1kb (/storage/emulated/0) + Download URL: http://{global_fhemip}:{global_bridgeport}/installFlow_{param_flowname} to /storage/emulated/0/Download + Script: flow_informations = "\"flow_informations\":" + " \"" + {informationFlow_state} + "\""; fhemcmd = "setreading"; + Script: automagicState = "\"automagicState\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; + Flows ausführen: udef_trigger setLockPin + Flow Aktiv: Informations + Script: informationFlow_state = "aktiv" + Script: informationFlow_state = "inaktiv" + Setze Flow Status: Aktivieren Informations + Flow Aktiv: Send Data to AMADCommBridge + Setze Flow Status: Aktivieren Send Data to AMADCommBridge + SMS senden an: an {param_smsnumber} '{param_smsmessage}' (10 in 12h) + Expression: param_lockmod == "lock" + Expression: Airplanemode + Expression: param_nfc == "on" + Expression: param_nfc == "off" + NFC ein-/ausschalten: Aus + Expression: sendSms" + Expression: closeCall" + Expression: nfc" + NFC ein-/ausschalten: Ein + Expression: setRingSoundVolume" + Lautstärken setzen param_ringsoundvolume + Setze Timer + Expression: ttsMsg" + Expression: ttsMsgLang" + Medianlautstärken Speichern + Lautstärke einstellen: Medien auf Level {param_msgvol} + Expression: param_msgvol == "none" + Sprachausgabe: Englisch + Sprachausgabe: Deutsch + Expression: param_msgvol == "none" + Medienlautstärke Wiederherstellen + Expression: flowState" + Setze Flow Status: Aktivieren {param_flowname} + Flows ausführen: VoiceControl + Setze Lock PIN/Passwort: PIN/Passwort zurücksetzen + Expression: showhomescreen" + Zeige Home Screen + Vibrieren: Pattern 2 (-- --) + Flows ausführen: Send Data to AMADCommBridge + Script: automagicState = "\"automagicState\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; + Expression: flowRun" + Flows ausführen: {param_flowname} + Flows ausführen: Update AMAD Flowset + Audio Player steuern: Medienknopf Stopp ({pname}/{kname}) + Expression: param_button == "mediaStop" + Expression: param_button == "mediaPlay" + Expression: param_button == "mediaNext" + Expression: param_button == "mediaBack" + Expression: trigger == "Sprachbefehl angefordert" + Expression: global_fhemip != null or global_bridgeport != null + Expression: header_amadid == {global_amadid} + Host erreichbar: {global_fhemip}:{global_bridgeport} + Script: Zuordnung Mediaplayer + Expression: currentFlowsetUpdate" + Expression: takepicture + Gerätespeicherplatz: Freier Speicherplatz > 1kb (/storage/emulated/0) + Expression: param_pictureresolution == "800x600" + Expression: param_picturecamera == "Back" + Expression: param_pictureresolution == "1024x768" + Expression: param_picturecamera == "Back" + Expression: param_pictureresolution == "1280x720" + Expression: param_picturecamera == "Back" + Expression: param_pictureresolution == "1600x1200" + Expression: param_picturecamera == "Back" + Expression: param_pictureresolution == "1920x1080" + Expression: param_picturecamera == "Back" + Script: notification_text = "Take Picture: can not save camerapicture, path does not exist" + Script: automagicState = "\"automagicState\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 800x600 Front + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1024x768 Front + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1280x720 Front + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1600x1200 Front + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1920x1080 Front + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 800x600 + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1024x768 + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1280x720 + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1600x1200 + Foto aufnehmen: /storage/emulated/0/AMADpicture.jpg (ohne Benutzeroberfläche) 1920x1080 + Expression: param_screenshotresolution == "1280x720" + Expression: param_screenshotresolution == "1920x1200" + Bildschirmfoto aufnehmen: 1920x1200 + Bildschirmfoto aufnehmen: 1280x720 + Bildschirmfoto aufnehmen: 1920x1080 + Expression: param_screenshotresolution == "1920x1080" + Script: automagicState = "\"automagicState\":" + " \"" + replaceAll({notification_text}, "\\n", " ") + "\""; fhemcmd = "setreading"; + Script: notification_text = "Take Screenshot: can not save screenshot, path does not exist" + Gerätespeicherplatz: Freier Speicherplatz > 1kb (/storage/emulated/0) + Expression: trigger == "HTTP Request: /fhem-amad/setCommands/*" + Expression: takescreenshot + + + + + + + + + + + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Update AMAD Flowset - AMADNG Info/Control Flowset v4.2.0 + AMADNG Info/Control Flowset v4.2.1 true QUEUE @@ -5241,7 +5325,7 @@ Soll der Assistent gelöscht werden? VoiceControl - AMADNG Info/Control Flowset v4.2.0 + AMADNG Info/Control Flowset v4.2.1 true QUEUE