Hallo,
eigentlich wollte ich mir für den DASH Button einen kleinen toggle schreiben.
aber irgendwie habe ich Tomaten auf den Augen.
Mein DOIF springt immer zwischen "an" und "aus" hin und her... klingt zwar lustig... ist aber nicht so gewollt...
kann mir mal jemand einen schubs in die richtige Richtung geben ?
([DashButton:fc-a6-67-f2-ca-0e] eq "short" and [SW_Bettheizung] eq "on")
(set SW_Bettheizung off)
DOELSE
([DashButton:fc-a6-67-f2-ca-0e] eq "short" and [SW_Bettheizung] eq "off")
(set SW_Bettheizung on)
vielen Dank
Carsten
Der short hält wohl länger an. Und du triggerst auf den Zustand, nicht auf das event.
Bru dein doif auf den event um (tip : event Monitor) und es sollte klappen.
Gesendet von meinem S3_32 mit Tapatalk
Und Bettheizung würde ich nur Abfragen und nicht drauf reagieren.
Ok, ich muss gerade gedanklich noch mal in die Schule, glaube ich...
folgendes Notify funktioniert...
DashButton:fc-a6-67-f2-ca-0e..short IF ([SW_Bettheizung] eq "on") (set SW_Bettheizung off) ELSE (set SW_Bettheizung on)
Jetzt wüsste ich wirklich gerne, wo der Unterschied zu dem DOIF ist, was halt nicht funktioniert :
([DashButton:fc-a6-67-f2-ca-0e.short] and [SW_Bettheizung] eq "on")
(set SW_Bettheizung off)
DOELSE
(set SW_Bettheizung on)
er springt immer in cmd_2...
was schmeisse ich diesmal durcheinander ?
klar, das notify geht... aber ich will ja lernen ;)
Gruß
Carsten
Im notify hast Du ".short", und im DOIF "..short". Ist aber vielleicht normal, ich kenne deine Events nicht.
Die Syntax, um auf einem Event zu reagieren im DOIF ist eigentlich
[DashButton:"fc-a6-67-f2-ca-0e.short"]
sonst nimmt er das als Reading
Letztendlich um auf SW_Bettheizung NICHT zu triggern (um ähnlich sein wie dein Notify), solltest Du so schreiben:
and [?SW_Bettheizung] eq "on"
Ahja... und das Konstrukt mit DOELSE führt zu Zustandwechseln sobald das Event vorbei ist. Es wäre besser mit
DOELSEIF ([DashButton:fc-a6-67-f2-ca-0e.short] and [?SW_Bettheizung] eq "off")
oder einfach auch im DOIF ein IF nutzen:
([DashButton:"fc-a6-67-f2-ca-0e.short"])
(IF ([SW_Bettheizung] eq "on") (set SW_Bettheizung off) ELSE (set SW_Bettheizung on))
Hallo,
so endlich Zeit gefunden zum testen...
vielen lieben Dank... nachdem ich den Bock mit dem event raus hatte, klappert es.
([DashButton:"18-74-2e-ba-27-1c..short"])
(IF ([WZ_LichtEssecke] eq "on") (set WZ_LichtEssecke off) ELSE (set WZ_LichtEssecke on))
attr di_LichtEssecke do always
brachte die Lösung...
Danke noch mal.
Carsten