FHEM Forum

FHEM => Automatisierung => Thema gestartet von: jksd am 30 Dezember 2014, 19:02:23

Titel: Dynamisch angelegter timer fehlt nach restart fhem
Beitrag von: jksd am 30 Dezember 2014, 19:02:23
Hallo,
habe bei meiner Recherche im Web nichts Passendes finden können:

Ich lege einen vom Anwender über Floorplan konfigurierten Timer "at_AbwesendAbgelaufen" aus 99_myUtils.pm heraus dynamisch an, um nach Ablauf einer vom Anwender konfigurierbaren Zeit X die Sonderbehandlung in Abwesenheit wieder rückgängig zu machen. Der Timer wird in der daraus aufgerufenen Funktion "Reset_Abwesend()" wieder gelöscht.

{fhem ("define at_AbwesendAbgelaufen at *$bisHour:$bisMinute:00 { Reset_Abwesend($bisDay,$bisMonth, $bisYear) } ")};


Wenn ich VOR Ablauf der Timers fhem neu starte, ist der Zeitpunkt des Timers in der fhem.save gesichert (OK).

Mein Problem:
Der Timer selbst ist jedoch nicht mehr verfügbar.


2014.12.30 18:44:38 1: statefile: Please define at_AbwesendAbgelaufen first


Wie schaffe ich es, dass ich einen dynamisch erzeugten Timer über ein "fhem restart" oder einen Stromausfall retten kann ?

Danke im Voraus !
Titel: Antw:Dynamisch angelegter timer fehlt nach restart fhem
Beitrag von: justme1968 am 30 Dezember 2014, 19:28:15
du musst save aufrufen damit neue devices (dein at) auch gesichert werden.

entweder dran denken und von hand save klicken oder direkt nach dem anlegen noch automatisch mit aufrufen.

gruss
  andre
Titel: Antw:Dynamisch angelegter timer fehlt nach restart fhem
Beitrag von: jksd am 30 Dezember 2014, 20:43:14
Danke für die schnelle Antwort - manchmal sieht man den Wald vor lauter Bäumen nicht.

So funktioniert es aus einem Perl-Skript heraus:

{fhem ("define at_AbwesendAbgelaufen at *$bisHour:$bisMinute:00 {Reset_Abwesend($bisDay,$bisMonth, $bisYear) } ")};
{fhem ("save") };


Wenn ich  ";; save" mit ins erste Statement schreibe, klappt es nicht. Verstehe ich nicht.

{fhem ("define at_AbwesendAbgelaufen at *$bisHour:$bisMinute:00 {Reset_Abwesend($bisDay,$bisMonth, $bisYear) } ;; save ")};


Gibt es dafür eine Erklärung ? Timing ?
Titel: Antw:Dynamisch angelegter timer fehlt nach restart fhem
Beitrag von: justme1968 am 30 Dezember 2014, 20:55:22
ob es das timing ist könntest du mir einen fhem sleep zwischen define und save testen.

vielleicht hat ist es aber auch etwas beim parsen des perl teils.