FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Muschelpuster am 17 Juli 2015, 22:24:29

Titel: DOIF mit Zeitauswertung
Beitrag von: Muschelpuster am 17 Juli 2015, 22:24:29
Hallo zusammen,

Leider scheitere ich an einem verzögertem Alarm. Bei Eintreten des Events fülle ich einen Dummy mit dem aktuellen Linux-Zeitstempel:
define not_Kuehlschrank_auf notify HM_Kuehlschrank:open {fhem("set du_alarm_kuehlschrank ".int(time))}
Nun will ich nach 1 Minute einen Alarm auslösen:
define di_Kuehlschrank_Alarm DOIF ([+00:00:15] and [?du_alarm_kuehlschrank:state] > 100 and [?du_alarm_kuehlschrank:state] < {int(time)-60}) (set WhatsApp0 send 491712345678  "Alarm")\
attr di_Kuehlschrank_Alarm do always
Ist das vielleicht völlig der falsche Weg, denn ich musste ja auch schon die zyklische Ausführung nehmen, damit ich ein Event habe. Taugt die aus Perl gezogene Zeit hier nicht? Wenn ich einen festen Wert rein schreibe funktioniert es.
Ich weiß, dass der Alarm momentan alle 30 Sekunden kommt, hier wird das Dummy noch nach Absetzen des Alarms auf 99 gesetzt.

Grüße vom Holzweg?
Niels

Titel: Antw:DOIF mit Zeitauswertung
Beitrag von: Damian am 17 Juli 2015, 22:46:55
Zitat von: Muschelpuster am 17 Juli 2015, 22:24:29
Hallo zusammen,

Leider scheitere ich an einem verzögertem Alarm. Bei Eintreten des Events fülle ich einen Dummy mit dem aktuellen Linux-Zeitstempel:
define not_Kuehlschrank_auf notify HM_Kuehlschrank:open {fhem("set du_alarm_kuehlschrank ".int(time))}
Nun will ich nach 1 Minute einen Alarm auslösen:
define di_Kuehlschrank_Alarm DOIF ([+00:00:15] and [?du_alarm_kuehlschrank:state] > 100 and [?du_alarm_kuehlschrank:state] < {int(time)-60}) (set WhatsApp0 send 491712345678  "Alarm")\
attr di_Kuehlschrank_Alarm do always
Ist das vielleicht völlig der falsche Weg, denn ich musste ja auch schon die zyklische Ausführung nehmen, damit ich ein Event habe. Taugt die aus Perl gezogene Zeit hier nicht? Wenn ich einen festen Wert rein schreibe funktioniert es.
Ich weiß, dass der Alarm momentan alle 30 Sekunden kommt, hier wird das Dummy noch nach Absetzen des Alarms auf 99 gesetzt.

Grüße vom Holzweg?
Niels

Ich glaube eher Holzweg.

Mögliche Lösung ohne notify:

define di_Kuehlschrank_Alarm ([HM_Kuehlschrank] eq "open") (set WhatsApp0 send 491712345678  "Alarm")
attr di_Kuehlschrank_Alarm wait 60




Gruß

Damian

Titel: Antw:DOIF mit Zeitauswertung
Beitrag von: Muschelpuster am 17 Juli 2015, 23:03:51
Oh man, Danke! Manche Dinge sind ja unfassbar einfach. Ich hatte jetzt noch befürchtet, dass der Alarm trotz inzwischen geschlossener Tür los geht, aber doch nicht bei der Genialität des doif-Modul-Etwicklers  ;)

vereinfachte Grüße
Niels