[gelöst] Toilettenlüfter verzögert einschalten "wenns was länger dauert"

Begonnen von roedert, 06 Dezember 2022, 20:25:54

Vorheriges Thema - Nächstes Thema

roedert

Das Licht auf der Toilette ist über Bewegungsmelder gesteuert.
Wenn es auf der Toilette "mal etwas länger dauert", soll nach zB 5 min der Lüfter für 10 Minuten eingeschaltet werden, wenn das Licht aber nach weniger als 5 min wieder aus ist, soll nichts passieren.

Ich suche nach einem möglichst eleganten Weg dies umzusetzen. Natürlich könnte ich beim "Licht ein" ein at-Device mit +5min erstellen, welches dann ein "set Luefter on-for-timer 600" macht. Wird das Licht wieder ausgeschaltet, müsste ich diesen Timer dann wieder löschen. Aber diese temporären Timer gefallen mir nicht wirklich - das muss sich doch auch komfortaber lösen lassen, zb mit einem DOIF mit wait oder einem watchdog.

Fürs DOIF habe ich aber  noch nicht den richtigen Ansatz, den wait abzubrechen wenn das Licht in weniger als 5 min wieder ausgeht.


roedert

#1
Ich hab gerade gemerkt, dass sich mir bei schreiben des Beitrags die Antwort schon slebst gegen habe ... watchdog. Ich hatte mich zu sehr am DOIF festgebissen, wo ich die Umsetzung des wait-Abbruchs suchte.

Die ist nun meine Lösung:
defmod Luefter_wd watchdog Licht:on 00:05:00 Licht:off set Luefter on-for-timer 600
attr Luefter_wd autoRestart 1