Nachdem ich mich eine Weile mit isday rumgeärgert habe (z.B. "real"), löste ich das Ganze mit einer DOIF-konformen Variante:
define isdayreal DOIF (sunset_rel("real")) DOELSEIF (sunrise_rel("real"))
attr isdayreal cmdState night|day
Vorteile:
- nur ein Timer für alle Abfragen (ich brauch das an verschiedenen Stellen)
- ggü. isday es wird ein Ereignis erzeugt (ich muss nicht mehr zwei Abfragen für Helligkeit und Zeit mache, wenn ich beides als Auslöser brauche, und ja, ich kenne die Parameter für sunrise/sunset)
- ggü. sunrise/sunset wird nur ein Ereignis erzeugt (Last geht runter, wenn ich es mehrfach brauche)
- saubere Reaktion auf "real", was mir mit isday("real") nicht gelungen ist
- ich bekomme das Ergebnis im Frontend angezeigt
- zu Testzwecken kann ich es ändern (muss nicht auf den Zeitpunkt warten und kann nur einmal pro Tag testen)
- arbeitet auf Fhem-Ebene (muss mich also nicht mit Perl-Klammern "rumärgern")
Nachteile:
- nicht wirklich: für abweichende Zeitpunkte benötigt man zwar weiterhin separate Abfragen, aber das ist zumindest nicht mehr Aufwand als vorher, da man diese vorher auch brauchte
Braucht man zusätzliche
Leider funktioniert das nicht mehr so.
Mit ein paar Klammern geht`s dann wieder:
define isdayreal DOIF ([{sunset("REAL")}]) DOELSEIF ([{sunrise("REAL")}])
attr isdayreal cmdState night|day
Geht bei mir so nicht.....
mMn muss aus dem DOELSEIF ein DOELSE gemacht werden.
define isdayreal DOIF ([{sunset("REAL")}]) DOELSE ([{sunrise("REAL")}])
dann funzt es.
;)
Nein, DOIELSIF ist richtig. Du fragst ja was ab und führst nix aus.
Zitat von: Per am 15 Januar 2020, 16:34:21
Nein, DOIELSIF ist richtig. Du fragst ja was ab und führst nix aus.
DOIELSIF :o
Hallo,
ja ok.... was soll mein dummes Geschwätz von gestern?
War mein Fehler, sorry für die Aufregung.