FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: stefan-dd am 11 März 2023, 22:28:46

Titel: Restlaufzeit DOIF Timer
Beitrag von: stefan-dd am 11 März 2023, 22:28:46
Ich möchte mir die Restlaufzeit eines DOIF Timers in Minuten anzeigen lassen.
Aus dem Reding müsste die Zeit selektiert werden und mit der aktuellen Zeit subtrahiert werden. Dieses Rechenergebnis müsste man dann minütlich berechnen.
Für den ersten Teil habe ich gar keinen Plan, oder gibt es eventuell schon eine fertige Lösung irgendwo?

wait_timer 11.03.2023 22:28:15 cmd_2_1 Timer_DOIF
Titel: Antw:Restlaufzeit DOIF Timer
Beitrag von: Damian am 11 März 2023, 22:31:06
ja - im DOIF-Perlmodus, nennt sich get_Exec: https://wiki.fhem.de/wiki/DOIF/Perl-Modus#Restzeit_des_Timers_bestimmen:_get_Exec.28.29
Titel: Antw:Restlaufzeit DOIF Timer
Beitrag von: stefan-dd am 12 März 2023, 18:40:26
Damit komme ich nicht weiter, ich benötige ein Reading das die Restlaufzeit anzeigt. Wie bekomme ich das aus dem Reading wait_timer selektiert?
Titel: Antw:Restlaufzeit DOIF Timer
Beitrag von: Damian am 12 März 2023, 19:08:54
Zitat von: stefan-dd am 12 März 2023, 18:40:26
Damit komme ich nicht weiter, ich benötige ein Reading das die Restlaufzeit anzeigt. Wie bekomme ich das aus dem Reading wait_timer selektiert?

Dann musst du tief in Perl einsteigen:

-mit Regex das Datum mit Uhrzeit aus dem Reading selektieren

-die Zeit in Sekunden umrechnen

-die aktuelle Zeit in Sekunden bestimmen

-Differenz der beiden Zeitpunkte in Sekunden bestimmen

-in Minuten umrechnen

-in ein Reading speichern

so ganz grob :)