Timer verlängern
Verfasst: 10. Nov 2022 20:48
Moin,
ich lasse über einen Bewegungsmelder einen Schalter einschalten, nach ablauf eines Timers soll der Schalter aus gehen. Wenn innerhalb des Timer der Bewegungsmelder wieder ausslöst soll der Timer verlängert werden.
Der Bewegungsmelder gibt ON bei Bewegung und schaltet nach 60s auf OFF.
Leider funktioniert die Verlängerung nicht, der Timer startet immer neu.
Vieleicht findet jemand von euch den Fehler.
Danke und Gruß
Olaf
ich lasse über einen Bewegungsmelder einen Schalter einschalten, nach ablauf eines Timers soll der Schalter aus gehen. Wenn innerhalb des Timer der Bewegungsmelder wieder ausslöst soll der Timer verlängert werden.
Der Bewegungsmelder gibt ON bei Bewegung und schaltet nach 60s auf OFF.
Leider funktioniert die Verlängerung nicht, der Timer startet immer neu.
Vieleicht findet jemand von euch den Fehler.
Danke und Gruß
Olaf
Code: Alles auswählen
var Timer tTest = null
//Test rule
rule "testen"
when
Item BewegungHelloweenPresence changed to ON //Bewegungsmelder löst aus
then
if(tTest !== null){ //prüft ob Timer läuft
logInfo("test", "Bewegung Timer verlängert")
tTest.reschedule(now.plusSeconds(120)) //Timer läuft und wird umgeplant
}
else { //Timer läuft nicht
logInfo("test", "Bewegung Timer läuft")
Testschalter.sendCommand(ON) //Schalter ein
tTest = createTimer(now.plusSeconds(180), [| //Timer starten
Testschalter.sendCommand(OFF) //Timer abgelaufen, Schalter aus
logInfo("test", "Bewegung Timer abgelaufen")
])
tTest = null //Timer Variable auf "null"
}
end