Ich bekomme im Logfile folgenden Fehler
Abendlicht: syntax error at (eval 1732) line 1, near "HandySascha:"
folgenden at - Timer habe ich erstellt:
*{sunset(0)} { fhem ("set WohnzimmerVitrine,Aussenlicht_hinten1 on") if ([Handy1:&STATE] eq "present" || [Handy2:&STATE] eq "present") }
Es sollen, wenn eines der Handys da ist, zum Sonnenuntergang zwei Lampen eingeschaltet werden.
Hallo,
du versuchts if und IF zu vermischen was logischerweise schief geht.
das hatten wir aber bereits ein paar mal hier 8)
Grüße
Edith: Hier die commandref - sogar auf deutsch:
http://fhem.de/commandref_DE.html#IF (http://fhem.de/commandref_DE.html#IF)
Alles klar danke für den Hinweis.
So gehts:
*{sunset(-2700)} IF ([Handy1:&STATE] eq "present" || [Handy2:&STATE] eq "present") ((set WohnzimmerVitrine,Aussenlicht_hinten1 on))
Hallo,
du weisst aber das, wenn der Zeitpunkt des at rum ist und du erst danach present bist nicht mehr geschaltet wird.
Schau dir mal DOIF an - damit kannst du genau solche Fälle noch abfangen.
Sprich:
at vorbei niemand da = es passiert nichts
at vorbei jemand kommt = Licht schaltet
jemand da und at erreicht = Licht schaltet <-- das kannst du evtl. noch abfangen wenn du das nicht willst
Grüße
OK, das war mir klar aber ich glaube DOIF ist mir für den Anfang zu mächtig. Aber vielen Dank! Immer gut zu wissen was es alles gibt :)
Hallo,
mal als Beispiel (ich bin mit DOIF noch nicht so vertraut):
define di_lamp DOIF ([{sunset(-2700)}] and ([Handy1] eq "present" or [Handy2] eq "present")) (set WohnzimmerVitrine,Aussenlicht_hinten1 on)
attr di_lamp do always
Grüße
Zitat von: Puschel74 am 07 Oktober 2014, 16:30:45
Hallo,
mal als Beispiel (ich bin mit DOIF noch nicht so vertraut):
define di_lamp DOIF ([{sunset(-2700)}] and ([Handy1] eq "present" or [Handy2] eq "present")) (set WohnzimmerVitrine,Aussenlicht_hinten1 on)
attr di_lamp do always
Grüße
Komma ist Trennzeichen bei DOIF zwischen den FHEM-Befehlen, also:
define di_lamp DOIF ([{sunset(-2700)}] and ([Handy1] eq "present" or [Handy2] eq "present")) (set WohnzimmerVitrine on, set Aussenlicht_hinten1 on)
Gruß
Damian
Hallo,
und das ist der einzige Fehler ::)
Dann werd ich auch langsam auf DOIF migrieren - und das von mir :o
Grüße
Zitat von: Puschel74 am 07 Oktober 2014, 17:34:14
Hallo,
und das ist der einzige Fehler ::)
Dann werd ich auch langsam auf DOIF migrieren - und das von mir :o
Grüße
ja, oft werden Sachen von at oder notify eins zu eins portiert. Mit einem DOIF macht es aber insbesondere Sinn ein Problem komplett abzudecken, nach dem Motto: "Wer die Lampe anmacht, soll sie auch wieder ausmachen"
Gruß
Damian