NEWS
RF Lichtschalter per Bewegungsmelder und Broadlink schalten
-
Ich habe nun mal den Bewegungsmelder in der CCU auf "Wahl des Sendeabstandes" auf klassisch eingestellt.
Das klappt nun.
Ein Frage hätte ich noch, wie kann ich es per Script anstellen das: Falls der Bewegungsmelder keine Änderung für 10 Minuten erfasst, soll eine Variable auf True gesetzt werden
Gruß
Michael
-
So? weiß nicht, ob das so geht mit dem setTimeout direkt
on({id: idBewegung, change: 'any'}, setTimeout(function (obj) { if(obj.oldState.val === obj.State.val) setState(idVariable, true) else setState(idVariable, false) ; }, 600000); });
Idee: wenn der BWM eine Ändeurng meldet, testest du 10 Minuten später, ob der Wert immer noch auf dem gleichen Wert steht allerdings bin ich mir nicht sicher, ob das mit "true" funktioniert. Die BWM schalten ja meist "motion detected" nach einiger Zeit weider auf false, und falls sich dann jemand bewegt gleich wieder auf true, oder?
-
Guten Tag
der BWM geht nach der Bewegungserfassung wieder auf false.
In dem Moment soll ein Timer starten, sollte der BWM wieder Bewegung feststellen soll der Timer gestoppt werden. Erst wenn der Timer 10 Minuten ohne Unterbrechung läuft soll eine Variable auf True gesetzt werden.
Leider sind meine Script Fähigkeiten sehr begrenzt, daher benötige ich Unterstützung
Gruß
Michael
-
so?
var timer = null; on({id: idBewegung, change: 'ne'}, function (obj) { if(!obj){ timer = setTimeout(function() { if(obj.oldState.val === obj.State.val) {setState(idVariable, true); } else {setState(idVariable, false); } timer = null; }, 600000); } else if(timer) { cleartimeout(timer); timer = null } });
-
so?
var timer = null; on({id: idBewegung, change: 'ne'}, function (obj) { if(!obj){ timer = setTimeout(function() { if(obj.oldState.val === obj.State.val) {setState(idVariable, true); } else {setState(idVariable, false); } timer = null; }, 600000); } else if(timer) { cleartimeout(timer); timer = null } }); ```` ` Dankeschön
Gesendet von meinem RNE-L21 mit Tapatalk
-
probiers erstmal aus, bin nur Laie
-
der BWM geht nach der Bewegungserfassung wieder auf false.
In dem Moment soll ein Timer starten, sollte der BWM wieder Bewegung feststellen soll der Timer gestoppt werden. Erst wenn der Timer 10 Minuten ohne Unterbrechung läuft soll eine Variable auf True gesetzt werden. `
var timer = null; on(idBewegung, function (obj) { if(obj.state.val) { clearTimeout(timer); setState(idVariable, false); } else { timer = setTimeout(function() { setState(idVariable, true); }, 600000); } });
-
if(!obj){
–>
if(!obj.state.val){
und Groß-/Kleinschreibung beachten !
obj.State.val –> __obj.state.va__l oder obj.newState.val
-
der BWM geht nach der Bewegungserfassung wieder auf false.
In dem Moment soll ein Timer starten, sollte der BWM wieder Bewegung feststellen soll der Timer gestoppt werden. Erst wenn der Timer 10 Minuten ohne Unterbrechung läuft soll eine Variable auf True gesetzt werden. `
var timer = null; on(idBewegung, function (obj) { if(obj.state.val) { clearTimeout(timer); setState(idVariable, false); } else { timer = setTimeout(function() { setState(idVariable, true); }, 600000); } }); ```` `
Hallo
Ich möchte gerne den Status vom "timer" in den Objekten sehen können.
Gruß Michael
-
Ich möchte gerne den Status vom "timer" in den Objekten sehen können. `
Was erwartest Du da ?Timer-Objekte lassen sich nicht als normale Objekte darstellen.