From 081bbc6bad5474391f67ee612951825b65437f4c Mon Sep 17 00:00:00 2001 From: Marko Oldenburg Date: Thu, 26 May 2016 06:16:23 +0200 Subject: [PATCH] =?UTF-8?q?unterst=C3=BCtzung=20f=C3=BCr=20Amazon=20Musik?= =?UTF-8?q?=20Trackinfo,=20Commandref=20angepasst?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 74_AMAD.pm | 4 +- ...5.xml => 74_AMADautomagicFlowset_2.1.6.xml | 563 +++++++++--------- README.md | 4 +- 3 files changed, 289 insertions(+), 282 deletions(-) rename 74_AMADautomagicFlowset_2.1.5.xml => 74_AMADautomagicFlowset_2.1.6.xml (89%) diff --git a/74_AMAD.pm b/74_AMAD.pm index 41e52fa..70d5584 100644 --- a/74_AMAD.pm +++ b/74_AMAD.pm @@ -38,7 +38,7 @@ use Encode qw(encode); my $modulversion = "2.1.5"; -my $flowsetversion = "2.1.5"; +my $flowsetversion = "2.1.6"; @@ -1340,6 +1340,7 @@ sub AMAD_decrypt($) {
  • connectedBTdevices - list of all devices connected via bluetooth
  • connectedBTdevicesMAC - list of MAC addresses of all devices connected via bluetooth
  • currentMusicAlbum - currently playing album of mediaplayer
  • +
  • currentMusicApp - currently playing player app
  • currentMusicArtist - currently playing artist of mediaplayer
  • currentMusicTrack - currently playing song title of mediaplayer
  • daydream - on/off, daydream currently active
  • @@ -1493,6 +1494,7 @@ sub AMAD_decrypt($) {
  • connectedBTdevices - eine Liste der verbundenen Gerät
  • connectedBTdevicesMAC - eine Liste der MAC Adressen aller verbundender BT Geräte
  • currentMusicAlbum - aktuell abgespieltes Musikalbum des verwendeten Mediaplayers
  • +
  • currentMusicApp - aktuell verwendeter Mediaplayers
  • currentMusicArtist - aktuell abgespielter Musikinterpret des verwendeten Mediaplayers
  • currentMusicTrack - aktuell abgespielter Musiktitel des verwendeten Mediaplayers
  • daydream - on/off, Daydream gestartet oder nicht
  • diff --git a/74_AMADautomagicFlowset_2.1.5.xml b/74_AMADautomagicFlowset_2.1.6.xml similarity index 89% rename from 74_AMADautomagicFlowset_2.1.5.xml rename to 74_AMADautomagicFlowset_2.1.6.xml index 7e895f8..1ac9bdb 100644 --- a/74_AMADautomagicFlowset_2.1.5.xml +++ b/74_AMADautomagicFlowset_2.1.6.xml @@ -66,6 +66,24 @@ false false + + false + com.amazon.mp3.metachanged + true + com.amazon.mp3.metachanged + + + + + + + + global_artist = getString("com.amazon.mp3.artist"); +global_track = getString("com.amazon.mp3.track"); +global_album = getString("com.amazon.mp3.album"); +global_musicapp = "amazonmusic"; + false + false com.android.music.metachanged @@ -80,24 +98,8 @@ 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"); +global_album = getString("album"); +global_musicapp = "googlemusic" false @@ -769,8 +771,8 @@ or global_deviceport!= {header_dport} true - Expression: trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" - trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" + Expression: trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" or trigger == "com.amazon.mp3.metachanged" + trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" or trigger == "com.amazon.mp3.metachanged" true @@ -2126,7 +2128,7 @@ if (header_dport != null or header_dport != {global_deviceport}) { POST GENERAL_TEXT text/plain - currentMusicTrack@@{global_track}@@@@currentMusicAlbum@@{global_album}@@@@currentMusicArtist@@{global_artist}@@@@ + currentMusicTrack@@{global_track}@@@@currentMusicAlbum@@{global_album}@@@@currentMusicArtist@@{global_artist}@@@@currentMusicApp@@{global_musicapp}@@@@ @@@@readingsNameXYZ@@readingsValueABC 60000 true @@ -2231,8 +2233,8 @@ FHEMCMD: setreading true - Script: amad_flowset_version = "2.1.5" - + Script: amad_flowset_version = "2.1.6" + true @@ -2277,10 +2279,11 @@ connected_devices_addresses = "null" true - Script: global_artist = "no soundplayer active"; global_track = "no soundplayer active"; global_album = "no soundplayer active"; - + Script: global_artist = "no player active"; global_track = "no player active"; global_album = "no player active"; global_musicapp = "no player active"; + true @@ -2669,7 +2672,7 @@ FHEMCMD: setreading Informations - AMAD2 Info/Control Flowset v2.1.5 + AMAD2 Info/Control Flowset v2.1.6 true PARALLEL 900 @@ -2716,91 +2719,93 @@ FHEMCMD: setreading Pause: 2s (Gerät wach halten) Expression: keyguard == "locked" 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" - Expression: trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" - Pause: 1s (Gerät wach halten) - Musik Aktiv - Bluetooth eingeschaltet - Script: bluetooth_state = "off" - Script: bluetooth_state = "on" - Bluetooth Gerät verbunden: Beliebiges Geräte - Script: connected_devices_names = "null"; connected_devices_addresses = "null" - Expression: trigger == "Daydream Status: Gestartet" or trigger == "Daydream Status: Gestoppt" - Expression: trigger == "Eingehender Anruf. Status: Klingelt, Nummern: Alle" - Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" - Benachrichtigung in Statusbar angezeigt: Automagic - Expression: getAndroidSDKVersion() >= "19" - Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" - Script: notification_text = "not supported from your device" - Benachrichtigung in Statusbar angezeigt: WhatsApp - Expression: trigger == "Genereller Broadcast: wenn org.smblott.intentradio.STATE" - Expression: trigger == "Benachrichtigung in Statusbar angezeigt: com.whatsapp" - Check run Task - Screen State - Reading Music Metachanged.2 - Bluetooth Status - Bluetooth Device Status - Notification Volume - Lautstärke / Volume - Nächster Alarm - Screen Brightness - Screen Orientation - Dock State - Incoming WhatsApp Message - IntentRadio Status - Flowsetversion - Flow Status SetCommands - Expression: trigger == "Display Status: Aus" or trigger == "Display Status: Ein" or udef_trigger == "setLockPin" - Airplainemode - Script: airpcount = airpcount + 1 - 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" - 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" } - Next Alarm State - Expression: global_apssid != "usb-ethernet" - Script: airpcount = 0 - Pause: 2s (Gerät wach halten) - Expression: global_apssid != "usb-ethernet" - WLAN Verbunden: {global_apssid} - Dock Status: Docked - Expression: trigger == "Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic" or trigger == "Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic" - Expression: trigger == "Dock Event: Docked" or trigger == "Dock Event: Undocked" - Expression: global_activetask != null - Expression: trigger == "Bluetooth Status: Schaltet aus, Aus" or trigger == "Bluetooth Status: Schaltet ein, Ein" - App Task läuft: {global_activetask} (neuster) - Script: global_artist = "no soundplayer active"; global_track = "no soundplayer active"; global_album = "no soundplayer active"; - Automagic State - Script: notification_text = "not supported from your device" - Expression: global_fhemip != null or header_fhemip != null - Initialisiere Variable Systemeinstellung: volumeMusikBluetooth.2 - Initialisiere Variable Systemeinstellung: volumeMusikSpeaker.2 - Bluetooth Gerät verbunden: Beliebiges Geräte (Advanced Audio Distribution) - Script: volume = {volumeBT} - Script: volume = {volumeSP} - Initialisiere Variable Systemeinstellung: screenBrightness - Initialisiere Variable Systemeinstellung: volumeNotification - Expression: global_bridgeport == null or global_bridgeport != {header_bport} or global_fhemip == null or global_fhemip != {header_fhemip} or global_fhemdevice == null or global_fhemdevice != {header_fhemdevice} or global_activetask == null or global_activetask != {header_activetask} or global_apssid == null or global_apssid != {header_apssid} or global_deviceport != null or global_deviceport!= {header_dport} - Script: androidVersion = "not supported funktion" - Android Version - Expression: trigger == "Flugmodus: Aus" - Expression: package_name == {global_activetask} - Expression: trigger == "App Task Beendet" - Keyguard mit Sicherheit - Daydream State - Expression: getAndroidSDKVersion() >= "19" - Get Android Version - Expression: udef_trigger == "setLockPin" - Incoming Call - KeyGuard Set - Expression: trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Expression: trigger == "Periodischer Timer: alle 30s" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" - Device State - Stromversorgung: Angeschlossen - Expression: trigger == "Akku Ladestand: grösser als 0%" - Stromversorgung und Akkustand - Prüfe und setze globale Variablen - + Musik Aktiv + Bluetooth eingeschaltet + Script: bluetooth_state = "off" + Script: bluetooth_state = "on" + Bluetooth Gerät verbunden: Beliebiges Geräte + Script: connected_devices_names = "null"; connected_devices_addresses = "null" + Expression: trigger == "Daydream Status: Gestartet" or trigger == "Daydream Status: Gestoppt" + Expression: trigger == "Eingehender Anruf. Status: Klingelt, Nummern: Alle" + Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" + Benachrichtigung in Statusbar angezeigt: Automagic + Expression: getAndroidSDKVersion() >= "19" + Script: notification_text = "Aktiviere Automagic unter Einstellungen -> Benachrichtigungen -> Benachrichtigungszugriff" + Script: notification_text = "not supported from your device" + Benachrichtigung in Statusbar angezeigt: WhatsApp + Expression: trigger == "Genereller Broadcast: wenn org.smblott.intentradio.STATE" + Expression: trigger == "Benachrichtigung in Statusbar angezeigt: com.whatsapp" + Check run Task + Screen State + Bluetooth Status + Bluetooth Device Status + Notification Volume + Lautstärke / Volume + Nächster Alarm + Screen Brightness + Screen Orientation + Dock State + Incoming WhatsApp Message + IntentRadio Status + Flowsetversion + Flow Status SetCommands + Expression: trigger == "Display Status: Aus" or trigger == "Display Status: Ein" or udef_trigger == "setLockPin" + Script: airpcount = airpcount + 1 + 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" + 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" } + Next Alarm State + Expression: global_apssid != "usb-ethernet" + Script: airpcount = 0 + Pause: 2s (Gerät wach halten) + Expression: global_apssid != "usb-ethernet" + WLAN Verbunden: {global_apssid} + Dock Status: Docked + Expression: trigger == "Benachrichtigung in Statusbar angezeigt: ch.gridvision.ppam.androidautomagic" or trigger == "Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic" + Expression: trigger == "Dock Event: Docked" or trigger == "Dock Event: Undocked" + Expression: global_activetask != null + Expression: trigger == "Bluetooth Status: Schaltet aus, Aus" or trigger == "Bluetooth Status: Schaltet ein, Ein" + App Task läuft: {global_activetask} (neuster) + Automagic State + Script: notification_text = "not supported from your device" + Expression: global_fhemip != null or header_fhemip != null + Initialisiere Variable Systemeinstellung: volumeMusikBluetooth.2 + Initialisiere Variable Systemeinstellung: volumeMusikSpeaker.2 + Bluetooth Gerät verbunden: Beliebiges Geräte (Advanced Audio Distribution) + Script: volume = {volumeBT} + Script: volume = {volumeSP} + Initialisiere Variable Systemeinstellung: screenBrightness + Initialisiere Variable Systemeinstellung: volumeNotification + Expression: global_bridgeport == null or global_bridgeport != {header_bport} or global_fhemip == null or global_fhemip != {header_fhemip} or global_fhemdevice == null or global_fhemdevice != {header_fhemdevice} or global_activetask == null or global_activetask != {header_activetask} or global_apssid == null or global_apssid != {header_apssid} or global_deviceport != null or global_deviceport!= {header_dport} + Script: androidVersion = "not supported funktion" + Android Version + Expression: trigger == "Flugmodus: Aus" + Expression: package_name == {global_activetask} + Expression: trigger == "App Task Beendet" + Keyguard mit Sicherheit + Daydream State + Expression: getAndroidSDKVersion() >= "19" + Get Android Version + Expression: udef_trigger == "setLockPin" + Incoming Call + KeyGuard Set + Expression: trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Expression: trigger == "Periodischer Timer: alle 30s" or trigger == "HTTP Request: /fhem-amad/deviceInfo/" + Device State + Stromversorgung: Angeschlossen + Expression: trigger == "Akku Ladestand: grösser als 0%" + Stromversorgung und Akkustand + Prüfe und setze globale Variablen + WLAN Verbunden: {global_apssid} + Script: amad_flowset_version = "2.1.6" + Expression: trigger == "com.android.music.playstatechanged" or trigger == "com.android.music.metachanged" or trigger == "com.amazon.mp3.metachanged" + Script: global_artist = "no player active"; global_track = "no player active"; global_album = "no player active"; global_musicapp = "no player active"; + Airplainemode + Reading Music Metachanged.2 + Genereller Broadcast: wenn com.android.deskclock.ALARM_DONE Stromversorgung: Angeschlossen Genereller Broadcast: wenn org.smblott.intentradio.STATE + com.android.music.metachanged Systemeinstellung verändert: System volume_music_headphone Stromversorgung: Entfernt Bluetooth Status: Schaltet ein, Ein @@ -2818,11 +2823,11 @@ FHEMCMD: setreading Systemeinstellung verändert: System volume_music_speaker Daydream Status: Gestartet Akku Ladestand: grösser als 0% - com.android.music.playstatechanged Dock Event: Docked Systemeinstellung verändert: System volume_music_bt_a2dp HTTP Request: /fhem-amad/deviceInfo/ - com.android.music.metachanged + Periodischer Timer: alle 30s + com.amazon.mp3.metachanged Genereller Broadcast: wenn com.android.deskclock.ALARM_ALERT Benachrichtigung in Statusbar entfernt: ch.gridvision.ppam.androidautomagic Systemeinstellung verändert: System next_alarm @@ -2831,51 +2836,49 @@ FHEMCMD: setreading Display Orientierung: Landscape Flugmodus: Aus Systemeinstellung verändert: System volume_ring_speaker - Periodischer Timer: alle 30s - WLAN Verbunden: {global_apssid} - Script: amad_flowset_version = "2.1.5" + Pause: 3s (Gerät wach halten) - - - - - + + + + + - + - - - - - + + + + + - - - + + + - + - - - - - - + + + + + + - + - + @@ -2887,149 +2890,149 @@ FHEMCMD: setreading - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MultimediaControl - AMAD2 Info/Control Flowset v2.1.5 + AMAD2 Info/Control Flowset v2.1.6 true PARALLEL @@ -3110,7 +3113,7 @@ FHEMCMD: setreading SetCommands - AMAD2 Info/Control Flowset v2.1.5 + AMAD2 Info/Control Flowset v2.1.6 true QUEUE 900 @@ -3383,7 +3386,7 @@ FHEMCMD: setreading Update AMAD Flowset - AMAD2 Info/Control Flowset v2.1.5 + AMAD2 Info/Control Flowset v2.1.6 true PARALLEL @@ -3431,7 +3434,7 @@ FHEMCMD: setreading VoiceControl - AMAD2 Info/Control Flowset v2.1.5 + AMAD2 Info/Control Flowset v2.1.6 true QUEUE 60 diff --git a/README.md b/README.md index d1dc30f..671f80d 100644 --- a/README.md +++ b/README.md @@ -92,16 +92,18 @@ Set
    • activateVoiceInput - aktiviert die Spracheingabe
    • +
    • amazonMusic - play, stop, next, back ,steuert den Amazon Musik Mediaplayer
    • bluetooth - on/off, aktiviert/deaktiviert Bluetooth
    • clearNotificationBar - All,Automagic, löscht alle Meldungen oder nur die Automagic Meldungen in der Statusleiste
    • currentFlowsetUpdate - fürt ein Flowsetupdate auf dem Device durch
    • +
    • googleMusic - play, stop, next, back ,steuert den Google Play Musik Mediaplayer
    • installFlowSource - installiert einen Flow auf dem Device, das XML File muss unter /tmp/ liegen und die Endung xml haben. Bsp: set TabletWohnzimmer installFlowSource WlanUebwerwachen.xml
    • -
    • mediaPlayer - play, stop, next, back ,steuert den Standard Mediaplayer
    • nextAlarmTime - setzt die Alarmzeit. gilt aber nur innerhalb der nächsten 24Std.
    • notifySndFile - spielt die angegebene Mediadatei auf dem Androidgerät ab. Die aufzurufende Mediadatei muß sich im Ordner /storage/emulated/0/Notifications/ befinden.
    • screenBrightness - setzt die Bildschirmhelligkeit, von 0-255.
    • screenMsg - versendet eine Bildschirmnachricht
    • sendintent - sendet einen Intentstring Bsp: set $AMADDEVICE sendIntent org.smblott.intentradio.PLAY url http://stream.klassikradio.de/live/mp3-192/stream.klassikradio.de/play.m3u name Klassikradio, der erste Befehl ist die Aktion und der zweite das Extra. Es können immer zwei Extras mitgegeben werden.
    • +
    • spotifyMusic - play, stop, next, back ,steuert den Spotify Mediaplayer
    • statusRequest - Fordert einen neuen Statusreport beim Device an. Es können nicht von allen Readings per statusRequest die Daten geholt werden. Einige wenige geben nur bei Statusänderung ihren Status wieder.
    • timer - setzt einen Timer innerhalb der als Standard definierten ClockAPP auf dem Device. Es können nur Sekunden angegeben werden.
    • ttsMsg - versendet eine Nachricht welche als Sprachnachricht ausgegeben wird