Hi,
ich scheitere offenbar an der DOIF-Syntax. StromOKay ist ein Dummy, Schreibtisch eine Lampe.
Realisiert wird immer nur Bedingung 2, dh der Dummy steht beharrlich auf "on".
defmod LichtAusNachStromausfall DOIF ([Schreibtisch:"off"]) (set StromOkay off) DOELSE(set StromOkay on)
Sieht jemand den Fehler?
LG Ingo
Hallo Ingo,
na viel ist nicht zu sehen, aber zu vermuten:
Du triggerst das DOIF mit Events und fragst aber nur den Event off für den ersten Zweig ab.
Schau Dir im Event Monitor an was da noch danach kommt - sicher kommt was.
Das ist nicht "off" und dein DOIF geht auf cmd2.
Mach doch den Trigger auf Zustand: ([Schreibtisch] eq "off") damit wird der STATE abgefragt (auch nicht optimal) wenn ein Event kommt und das DOIF triggert.
Besser wäre gezielt ein Reading zu fragen: ([Schreibtisch:state] eq "off")
Gruß Otto
Das ist eine Zustandsabfrage:
defmod LichtAusNachStromausfall DOIF ([Schreibtisch:state] eq "off") (set StromOkay off) DOELSE(set StromOkay on)
Super!
Nach Ottos Tipp habe ich im Logfile gesehen, dass die Lampe dort nicht mit dem Klarnamen, sondern als HUEDevice14 geführt wird.
Damians Code hat dann mit dem angepassten Namen sofort funktioniert.
Herzlichen Dank und einen schönen Abend!
LG Ingo