[Gelöst]MPD-Player state überwachen und Steckdose schalten

Begonnen von barneybaer, 10 September 2017, 13:42:50

Vorheriges Thema - Nächstes Thema

barneybaer

Hallo, ich habe ein kleines Problem mit der Überwachung der States vom MPD-Player um eine Funksteckdose bei Play einzuschalten und bei Stop auszuschalten, da meine Lautsprecher mit externen Strom versorgt werden.
In AMAD funktioniert es super, wenn das Tablet 20% bzw 99% hat, aber die Status-Überwachung des Players nicht. Vielleicht hab ich was vergessen oder übersehen und wäre für Vorschlage sehr dankbar.

Hier mein bisheriger Code
# MPD Player Status Play oder Stop
define MPDlayerStatusDummy notify MPD_Player:state:.* {if(ReadingsVal("MPD_Player","state","") eq "play"){fhem("set MPDlayerStatus play");;} elsif(ReadingsVal("MPD_Player","state","") eq "stop"){fhem("set MPDlayerStatus stop");;}}
attr MPDlayerStatusDummy room Flur

# MPD Player Status
define MPDlayerStatus dummy
attr MPDlayerStatus event-on-change-reading state
attr MPDlayerStatus room Flur

# Steckdose MPD Player an oder aus
define MPDlayerStatePruefung notify MPDlayerStatus:.* {if(ReadingsVal("MPDlayerStatus","state","") eq "play"){fhem("set Steckdose_TV_ON on");;} elsif(ReadingsVal("MPDlayerStatus","state","") eq "stop"){fhem("set Steckdose_TV_OFF on");;}}
attr MPDlayerStatePruefung room Flur

Wzut

warum so verdammt umständlich mit den ganzen Dummys ?
notify auf den echten MPD und damit die Dose an oder aus , fertig
und by the way MPD_Player:state:.* wird nie greifen weil es das so nicht gibt, schau in den Event Monitor und suche hier im Forum nach dem Stichwort addStateEvent
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

barneybaer

#2
Notify auf den echten MPD hatte ich versucht, dort gibts aber das Problem ununterbrochen der Ausschaltecode gesendet wird und nicht nur bei einer Änderung des stats.
und MPD_Player:state:.* bezieht sich doch auf das Gerät und das Readings was ausgegeben wird oder nicht? Mit addStateEvent muss ich mich noch bissl beschäftigen. Danke erstmal.

Edit: ich weis jetzt warum MPD_Player:state:.* nicht funktioniert. Richtig wäre MPD_Player:.*, nun geht es auch. werde mir das mit dem addStateEvent noch anschauen. Danke sehr.