Squeezeplayer Steuerung mit Siri und App

Begonnen von Humpelpumpel, 14 Mai 2017, 14:11:12

Vorheriges Thema - Nächstes Thema

Humpelpumpel

Hallo zusammen, ich hoffe ich habe hier den richtigen Forenteil erwischt.
Ich habe einen Squeezeplayer den ich zum einem mit Siri steuern möchte, aber auch mit der App "iPeng"

Die Steuerung nur mit Siri funktioniert problemlos. Wenn aber die Lautstärke durch die App geändert wird, erkennt DOIF das nicht.

Ich bin recht neu dabei und blick momentan leider grad so gar nicht mehr durch. :(

Folgendes Setup habe ich momentan:

Squeezeplayer: KU_Musik
genericDeviceType switch
homebridgeMapping On=state,valueOn=/^(on|off)/,cmdOn=play,cmdOff=pause Volume=volume::volume


Dummy für Lautstärke: KU_Musik_vol
genericDeviceType blind
homebridgeMapping clear CurrentPosition=state,minValue=0,maxValue=100,minStep=1 TargetPosition=::


DOIF ev_KU_Musik_vol
([KU_Musik_vol]) ({fhem("set KU_Musik volume ".ReadingsNum("KU_Musik_vol","state",0))}) DOELSEIF ([KU_Musik:volume]) ({fhem("set KU_Musik_vol  ".ReadingsNum("KU_Musik","volume",0))})

Per

#1
Wird denn die Änderung der Lautstärke durch die App im EvenLog angezeigt und wenn ja, wie?
Außerdem kannst du das DOIF einfacher schreiben
([KU_Musik_vol] != [?KU_Musik:volume])
     (set KU_Musik volume [KU_Musik_vol])
DOELSEIF ([KU_Musik:volume] != [?KU_Musik_vol])
     (set KU_Musik_vol  [KU_Musik:volume])


Humpelpumpel

Hiho, danke für das vereinfachen, ich hab den Code so von einem anderen Forennutzer übernommen, und das selbst umschreiben wollte noch nicht so wirklich klappen :D

Grad nochmal geschaut, die App setzt direkt beim Squeezeplayer (KU_Musik) den richtigen Wert. Sprich ich müsste theoretisch "nur" noch "volume" an meinen Lautstärke-Dummy weiterreichen...


Per

#3
Wichtig ist,
attr KU_Musik event-on-change-reading volume
und
attr KU_Musik_vol event-on-change-reading state
zu aktivieren, sonst läuft das DOIF im Kreis.

Zusätzlich muss aber auch
attr ev_KU_Musik_vol do always
aktiviert werden.

PS: Habe oben die DEF mal etwas modifiziert (und Tippfehler behoben). Damit sind die event-on-change-reading nicht zwingend notwendig.