Hallo,
ich hab mehrere watchdog-Devices, die die Öffnung von Fenstern und Türen überwachen.
Wenn bspw. die Haustür 5 Minuten offen ist, dann wird eine Nachricht aufs Handy geschickt. Mittlerweile verlasse ich mich total darauf und es funktioniert auch sehr zuverlässig - bis auf die Tatsache, dass ich gelegentlich nicht auf die Erinnerung reagiere.
Ich benötige dann eine 2. Erinnerung. Geht eine wiederkehrende Erinnerung mit einem watchdog und wie sieht sie aus.
Meine Definition:
defmod Tuerkontakt_Haustuer_watchdog watchdog Tuerkontakt_Haustuer:open 00:05:00 Tuerkontakt_Haustuer:closed \
set Pushover.Nachricht msg 'Türkontakt Haustür' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';; \
set PushNotifier.Nachricht message Türkontakt Haustür_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];; \
set NTFY message Title="Türkontakt Haustür"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];;
attr Tuerkontakt_Haustuer_watchdog activateOnStart 1
attr Tuerkontakt_Haustuer_watchdog autoRestart 1
attr Tuerkontakt_Haustuer_watchdog room IT
attr Tuerkontakt_Haustuer_watchdog verbose 1
Viele Grüße Gisbert
Du kannst deine "sets" einfach mit einem
defmod Erinnerung at +00:10 set...
am Schluss nochmal anhängen.
Das at ist nur temporär bis zur Ausführung vorhanden.
Hallo frober,
ich hab's so wie beschrieben durchgeführt, aber das at wird nicht ausgeführt. Der STATE steht auf defined.
Nach Schließen der Haustür (ist doch ziemlich kalt und nebelig hier), sieht das Device wie folgt aus:
define Tuerkontakt_Haustuer_watchdog watchdog Tuerkontakt_Haustuer:open 00:00:30 Tuerkontakt_Haustuer:closed \
set Pushover.Nachricht msg 'Türkontakt Haustür' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';; \
set PushNotifier.Nachricht message Türkontakt Haustür_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];; \
set NTFY message Title="Türkontakt Haustür"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];; \
at +00:01 \
set Pushover.Nachricht msg 'Türkontakt Haustür II' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';;
attr Tuerkontakt_Haustuer_watchdog activateOnStart 1
attr Tuerkontakt_Haustuer_watchdog autoRestart 1
attr Tuerkontakt_Haustuer_watchdog room IT
attr Tuerkontakt_Haustuer_watchdog verbose 1
# CFGFN ./FHEM/Fensterkontakte.cfg
# CMD
#set Pushover.Nachricht msg 'Türkontakt Haustür' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
#set PushNotifier.Nachricht message Türkontakt Haustür_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#set NTFY message Title="Türkontakt Haustür"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#at +00:01
#set Pushover.Nachricht msg 'Türkontakt Haustür II' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
# DEF Tuerkontakt_Haustuer:open 00:00:30 Tuerkontakt_Haustuer:closed
#set Pushover.Nachricht msg 'Türkontakt Haustür' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
#set PushNotifier.Nachricht message Türkontakt Haustür_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#set NTFY message Title="Türkontakt Haustür"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#at +00:01
#set Pushover.Nachricht msg 'Türkontakt Haustür II' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
# FUUID 66c772dd-f33f-e986-8b06-0736c95fb4061370
# NAME Tuerkontakt_Haustuer_watchdog
# NOTIFYDEV Tuerkontakt_Haustuer_watchdog,Tuerkontakt_Haustuer
# NR 1538
# NTFY_ORDER 50-Tuerkontakt_Haustuer_watchdog
# RE1 Tuerkontakt_Haustuer:open
# RE2 Tuerkontakt_Haustuer:closed
# STATE defined
# TO 30
# TYPE watchdog
# READINGS:
# 2025-01-19 15:44:47 Activated activated
# 2025-01-19 15:45:17 Reset reset
# 2025-01-19 15:45:17 Triggered triggered
# 2025-01-19 15:44:47 triggeredByDev Tuerkontakt_Haustuer
# 2025-01-19 15:44:47 triggeredByEvent open
# helper:
# bm:
# watchdog_Define:
# cnt 3
# dmx -1000
# dtot 0
# dtotcnt 0
# mTS 19.01. 15:33:03
# max 0.000478982925415039
# tot 0.00105786323547363
# mAr:
# HASH(0x55f1803df2b8)
# Tuerkontakt_Haustuer_watchdog watchdog Tuerkontakt_Haustuer:open 00:00:30 Tuerkontakt_Haustuer:closed
#set Pushover.Nachricht msg 'Türkontakt Haustür' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
#set PushNotifier.Nachricht message Türkontakt Haustür_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#set NTFY message Title="Türkontakt Haustür"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#at +00:00:30
#set Pushover.Nachricht msg 'Türkontakt Haustür II' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
# watchdog_Notify:
# cnt 49
# dmx -1000
# dtot 0
# dtotcnt 0
# mTS 19.01. 14:40:35
# max 0.00224614143371582
# tot 0.019085168838501
# mAr:
# HASH(0x55f1803df2b8)
# HASH(0x55f18036b400)
# watchdog_Set:
# cnt 62
# dmx -1000
# dtot 0
# dtotcnt 0
# mTS 19.01. 15:44:51
# max 0.000133991241455078
# tot 0.00158381462097168
# mAr:
# HASH(0x55f1803df2b8)
# Tuerkontakt_Haustuer_watchdog
# ?
#
setstate Tuerkontakt_Haustuer_watchdog defined
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 15:44:47 Activated activated
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 15:45:17 Reset reset
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 15:45:17 Triggered triggered
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 15:44:47 triggeredByDev Tuerkontakt_Haustuer
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 15:44:47 triggeredByEvent open
Bist du sicher, dass die Konstruktion, wie von dir beschrieben, so funktioniert?
Viele Grüße Gisbert
So habe ich das nicht geschrieben
at +00:01
defmod Erinnerung at +00:10 set Pushover.Nachricht msg 'Türkontakt Haustür II' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]'
und ohne Zeilenumbruch
Du musst ein "normales" at-Device definieren, nur mit defmod.
Das at wird temporär als Device unter unbekannt angelegt.
Hallo frober,
dein Vorschlag funktioniert mit folgender Einschränkung:
Man muss für jede Nachricht ein separates defmod hernehmen, da ansonsten die nachfolgenden Nachrichten der "zweiten Welle" dirket mit der "ersten Welle" rausgeschickt werden, und nur die erste Nachricht der "zweiten Welle" fristgerecht ausgeliefert wird (hoffentlich verständlich genug formuliert).
Also so:
define Tuerkontakt_Haustuer_watchdog watchdog Tuerkontakt_Haustuer:open 00:05:00 Tuerkontakt_Haustuer:closed \
set Pushover.Nachricht msg 'Türkontakt Haustür' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';; \
set PushNotifier.Nachricht message Türkontakt Haustür_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];; \
set NTFY message Title="Türkontakt Haustür"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];; \
defmod kill1 at +00:05:00 set Pushover.Nachricht msg 'Türkontakt Haustür II' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';; \
defmod kill2 at +00:05:00 set PushNotifier.Nachricht message Türkontakt Haustür II_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];; \
defmod kill3 at +00:05:00 set NTFY message Title="Türkontakt Haustür II"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];;
attr Tuerkontakt_Haustuer_watchdog activateOnStart 1
attr Tuerkontakt_Haustuer_watchdog autoRestart 1
attr Tuerkontakt_Haustuer_watchdog room IT
attr Tuerkontakt_Haustuer_watchdog verbose 1
# CFGFN ./FHEM/Fensterkontakte.cfg
# CMD
#set Pushover.Nachricht msg 'Türkontakt Haustür' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
#set PushNotifier.Nachricht message Türkontakt Haustür_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#set NTFY message Title="Türkontakt Haustür"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#defmod kill1 at +00:05:00 set Pushover.Nachricht msg 'Türkontakt Haustür II' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
#defmod kill2 at +00:05:00 set PushNotifier.Nachricht message Türkontakt Haustür II_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#defmod kill3 at +00:05:00 set NTFY message Title="Türkontakt Haustür II"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
# DEF Tuerkontakt_Haustuer:open 00:05:00 Tuerkontakt_Haustuer:closed
#set Pushover.Nachricht msg 'Türkontakt Haustür' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
#set PushNotifier.Nachricht message Türkontakt Haustür_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#set NTFY message Title="Türkontakt Haustür"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#defmod kill1 at +00:05:00 set Pushover.Nachricht msg 'Türkontakt Haustür II' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
#defmod kill2 at +00:05:00 set PushNotifier.Nachricht message Türkontakt Haustür II_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#defmod kill3 at +00:05:00 set NTFY message Title="Türkontakt Haustür II"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
# FUUID 66c772dd-f33f-e986-8b06-0736c95fb4061370
# NAME Tuerkontakt_Haustuer_watchdog
# NOTIFYDEV Tuerkontakt_Haustuer_watchdog,Tuerkontakt_Haustuer
# NR 1538
# NTFY_ORDER 50-Tuerkontakt_Haustuer_watchdog
# RE1 Tuerkontakt_Haustuer:open
# RE2 Tuerkontakt_Haustuer:closed
# STATE defined
# TO 300
# TYPE watchdog
# READINGS:
# 2025-01-19 16:32:06 Activated activated
# 2025-01-19 16:33:06 Reset reset
# 2025-01-19 16:33:06 Triggered triggered
# 2025-01-19 16:32:06 triggeredByDev Tuerkontakt_Haustuer
# 2025-01-19 16:32:06 triggeredByEvent open
# helper:
# bm:
# watchdog_Define:
# cnt 9
# dmx -1000
# dtot 0
# dtotcnt 0
# mTS 19.01. 15:33:03
# max 0.000478982925415039
# tot 0.00303912162780762
# mAr:
# HASH(0x55f1803df2b8)
# Tuerkontakt_Haustuer_watchdog watchdog Tuerkontakt_Haustuer:open 00:00:30 Tuerkontakt_Haustuer:closed
#set Pushover.Nachricht msg 'Türkontakt Haustür' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
#set PushNotifier.Nachricht message Türkontakt Haustür_offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#set NTFY message Title="Türkontakt Haustür"offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp];
#at +00:00:30
#set Pushover.Nachricht msg 'Türkontakt Haustür II' 'offen seit: [Tuerkontakt_Haustuer:Tuerkontakt_Haustuer_open_timestamp]';
# watchdog_Notify:
# cnt 76
# dmx -1000
# dtot 0
# dtotcnt 0
# mTS 19.01. 14:40:35
# max 0.00224614143371582
# tot 0.0249722003936768
# mAr:
# HASH(0x55f1803df2b8)
# HASH(0x55f18036b400)
# watchdog_Set:
# cnt 100
# dmx -1000
# dtot 0
# dtotcnt 0
# mTS 19.01. 15:44:51
# max 0.000133991241455078
# tot 0.00285816192626953
# mAr:
# HASH(0x55f1803df2b8)
# Tuerkontakt_Haustuer_watchdog
# ?
#
setstate Tuerkontakt_Haustuer_watchdog defined
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 16:32:06 Activated activated
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 16:33:06 Reset reset
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 16:33:06 Triggered triggered
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 16:32:06 triggeredByDev Tuerkontakt_Haustuer
setstate Tuerkontakt_Haustuer_watchdog 2025-01-19 16:32:06 triggeredByEvent open
Möglich das es sich bei einem at mit mehreren Kommandos anders verhält.Diese Konstellation habe ich noch nicht getestet.
Du kannst aber auch ein sleep anstelle vom at benutzen. Das sleep mit nachfolgendem Kommando blockiert nicht in FHEM und alles was danach kommt wird entsprechend verzögert.