warum startet das folgende DOIF nicht:
([hell:twilight_weather] < 100)
(set buro hue 40,set buro dim 100 300,set buro hue 260 12000 l)
DOELSEIF ([hell:twilight_weather] == 0)
(set buro dim 0 600)
bei buro handelt es sich um ein milight device
hat jemand von euch einen tipp für mich?
Du wirst nie in den Else Fall kommen weil 0 auch < 100 ist und die erste Bedingung greift.
Ansonsten kann man aus deinen Angaben leider nicht mehr erkennen da zu wenig Informationen vorhanden sind.
Wenn meine Antwort noch nicht dein Problem löst, mach doch mal einen list DOIFNAME und poste das, dann kann man vielleicht mehr sehen
Internals:
DEF (([tt] < 100) and
([tt] > 0))
(set buro hue 40,set buro dim 100 300,set buro hue 260 12000 l)
DOELSEIF
(([tt] == 0) or
([tt] == 100))
(set buro dim 0 600)
NAME katzenlicht
NR 69
NTFY_ORDER 50-katzenlicht
STATE initialized
TYPE DOIF
Readings:
2015-06-05 12:24:59 state initialized
Condition:
0 (InternalDoIf('tt','STATE','') < 100) and (InternalDoIf('tt','STATE','') > 0)
1 (InternalDoIf('tt','STATE','') == 0) or (InternalDoIf('tt','STATE','') == 100)
Devices:
0 tt
1 tt
all tt
Do:
0 set buro hue 40,set buro dim 100 300,set buro hue 260 12000 l
1 set buro dim 0 600
Helper:
last_timer 0
sleeptimer -1
Internals:
0 tt:STATE
1 tt:STATE
all tt:STATE
Itimer:
State:
Timerfunc:
Attributes:
room Doif
ich habe [hell:twilight_weather]
in den dummy [tt]
geändert um besser testen zu können.
das mit dem else fall wurde mir gestern auch klar, deshalb habe ich den code wie oben geändert.
aber eigentlich lief das doif auch gestern schon, ich habe es nur nicht gesehen.
der do bereich: (set buro hue 40,set buro dim 100 300,set buro hue 260 12000 l)
milight
wird nicht richtig ausgeführt. es wird ein step in set buro dim 100 300
ausgeführt und dann bleibt alles stehn.
jeder einzelne set befehl für sich allein läuft.