NEWS
(Blockly)-Trigger wird mehrmals ausgeführt
-
Hallo!
Ich habe folgendes Problem mit diesem Script:
on({id: 'sonoff.0.EG_WZ_Schiebetuere.POWER2', val: true}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("javascript.0.Lichter.EG_WZ_Raum").val == true) { console.log('Schalte aus'); setState("javascript.0.Lichter.EG_WZ_Raum"/*EG_WZ_Raum*/, false); } else { console.log('Schalte ein'); setState("javascript.0.Lichter.EG_WZ_Raum"/*EG_WZ_Raum*/, true); } });Wenn ich dann über Jarvis schalte bekomme ich folgende Einträge im Log:
2021-03-12 13:35:10.594 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte aus 2021-03-12 13:35:10.599 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum] 2021-03-12 13:35:10.759 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte ein 2021-03-12 13:35:10.765 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum] 2021-03-12 13:35:10.770 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte aus 2021-03-12 13:35:10.775 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum]Wenn ich direkt über den Schalter schalte bekomme ich: 2021-03-12 13:38:37.045 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte ein 2021-03-12 13:38:37.053 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum] 2021-03-12 13:38:37.056 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte aus 2021-03-12 13:38:37.062 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum]MOD-Edit: Code in code-tags gesetzt!
Eigentlich würde ich mir aber nur einen Schalt-Eintrag wünschen!
Woran liegts??
Danke!
LG
-
Hallo!
Ich habe folgendes Problem mit diesem Script:
on({id: 'sonoff.0.EG_WZ_Schiebetuere.POWER2', val: true}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("javascript.0.Lichter.EG_WZ_Raum").val == true) { console.log('Schalte aus'); setState("javascript.0.Lichter.EG_WZ_Raum"/*EG_WZ_Raum*/, false); } else { console.log('Schalte ein'); setState("javascript.0.Lichter.EG_WZ_Raum"/*EG_WZ_Raum*/, true); } });Wenn ich dann über Jarvis schalte bekomme ich folgende Einträge im Log:
2021-03-12 13:35:10.594 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte aus 2021-03-12 13:35:10.599 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum] 2021-03-12 13:35:10.759 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte ein 2021-03-12 13:35:10.765 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum] 2021-03-12 13:35:10.770 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte aus 2021-03-12 13:35:10.775 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum]Wenn ich direkt über den Schalter schalte bekomme ich: 2021-03-12 13:38:37.045 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte ein 2021-03-12 13:38:37.053 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum] 2021-03-12 13:38:37.056 - info: javascript.0 (163481) script.js.Lichter.EG_WZ_Raum1: Schalte aus 2021-03-12 13:38:37.062 - info: mqtt.1 (1667) send2Server javascript.0.Lichter.EG_WZ_Raum[javascript/0/Lichter/EG_WZ_Raum]MOD-Edit: Code in code-tags gesetzt!
Eigentlich würde ich mir aber nur einen Schalt-Eintrag wünschen!
Woran liegts??
Danke!
LG
@james4711 Aus meiner Sicht liegt es an deinem Trigger.
Bitte das Skript anpassen auf
on({id: 'sonoff.0.EG_WZ_Schiebetuere.POWER2', change: 'gt'}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("javascript.0.Lichter.EG_WZ_Raum").val == true) { console.log('Schalte aus'); setState("javascript.0.Lichter.EG_WZ_Raum"/*EG_WZ_Raum*/, false); } else { console.log('Schalte ein'); setState("javascript.0.Lichter.EG_WZ_Raum"/*EG_WZ_Raum*/, true); } }); -
@james4711 Aus meiner Sicht liegt es an deinem Trigger.
Bitte das Skript anpassen auf
on({id: 'sonoff.0.EG_WZ_Schiebetuere.POWER2', change: 'gt'}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("javascript.0.Lichter.EG_WZ_Raum").val == true) { console.log('Schalte aus'); setState("javascript.0.Lichter.EG_WZ_Raum"/*EG_WZ_Raum*/, false); } else { console.log('Schalte ein'); setState("javascript.0.Lichter.EG_WZ_Raum"/*EG_WZ_Raum*/, true); } });@asgothian Danke! Scheint so zu funktionieren. Aber warum Greater??
-
@asgothian Danke! Scheint so zu funktionieren. Aber warum Greater??
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden