Hallo zusammen,
ich habe einen Dummy (WeckerRT), der mehrere Usereadings (u.a. aWeckTime) enthält in denen jeweils eine Unixzeit steht. Eine normale Uhrzeit als Reading habe ich verworfen, da ich im DOF mit den Zeiten rechnen will und so auch Zeiten am Vortag entstehen.
Im Dummy sind Wecker-Zeiten (incl. Tage) hinterlegt, die Heizung, Licht... zu bestimmten Zeiten schalten sollen.
Wenn ich das DOIF anlege, dann wird der Zeitpunkt richtig berechnet.
Setzte ich das Reading neu, dann wird das DOIF nicht berechnet. Auch nicht mit checkall.
Im Event-Monitor erscheint aber der Dummy mit seinen Readings.
Editiere ich das DOIF, dann erfolgt eine korrekte Neuberechnung.
Ich habe das DOIF mal reduziert auf das Minimum. Keine Änderung.
Zitat([({strftime("%H:%M",localtime([WeckerRT:aWeckTime]))})])({Log 3, "Testwecker"})
Wo ist mein Fehler?
So funktionert es auch bei mir. :-\ Mit setreading über die Kommandozeile, aber ich setze die Readings über ein notify. >:(
Mit Deinem Beitrag konnte ich das eingrenzen und neu im Forum suchen. Die Lösung habe ich hier gefunden: https://forum.fhem.de/index.php?topic=53099.0 (https://forum.fhem.de/index.php?topic=53099.0)
Aus fhem("setreading " . $NAME . " aWeckTime " . $WZ);
im notify wurde fhem("sleep 3;setreading " . $NAME . " aWeckTime " . $WZ);
So scheint es zu funktionieren.