NEWS
[gelöst] Funktion on({id: …. - Value Übergabe....?
-
Liebe Leute,
immer dann wenn ich meine Programmieren im ioBroker endlich "wirklich" verstanden zu haben, kommt DAS :(
Wenn eine on id Funktion auslöst kann man ja den Wert des überwachten Datenpunktes in der Funktion dann gleich weiter nutzen mit obj.state.val - dachte ich zumindest und hätte es so auch in diversen Scripten im Einsatz. in diesem Beispiel geht es aber nicht - warum? :?:
on({id: "hm-rega.0.14733"/*HZ-Mode WC und VR_EG*/, change: "ne" }, function () { if (obj.state.val == 91){ Stufe = 1; Raum = "Vorraum Erdgeschoß"; aktTemp = "hm-rpc.0.MEQ0088534.1.TEMPERATURE"/*Klima WC.TEMPERATURE*/; bastel_Push(Stufe, Raum, aktTemp); } });Ich bekomm' die Fehlermeldung
javascript.0 2017-10-03 14:56:42.230 error at Object. (script.js.Basics.Notheizwarnungen:20:9) javascript.0 2017-10-03 14:56:42.229 error Error in callback: ReferenceError: obj is not definedSelbiger Code in diesem Beispiel funktioniert aber:
on({id: "vis.0.control.Displays_aktiv"/*Displays_aktiv*/, change: "ne"}, function(obj){ // check auf Displays EIN if (obj.state.val === true){ var request = require("request"); var starte_tablet = "http://192.168.68.220:50000/tasker=displayon"; request(starte_tablet, function (err, state, body){log("---------------------------------------- Starte Tab 3")}); var starte_sony = "http://192.168.68.221:50000/tasker=displayon"; request(starte_sony, function (err, state, body){log("---------------------------------------- Starte Sony OG")}); } // check auf Displays AUS if (obj.state.val === false){ var requestAUS = require("request"); var stoppe_tablet = "http://192.168.68.220:50000/tasker=displayoff"; requestAUS(stoppe_tablet, function (err, state, body){log("---------------------------------------- STOPPE Tab 3")}); var stoppe_sony = "http://192.168.68.221:50000/tasker=displayoff"; requestAUS(stoppe_sony, function (err, state, body){log("---------------------------------------- STOPPE Sony OG")}); } });??
Liebe Grüße
tom
-
fehlt da nicht in deinem ersten Code das (obj)
on({id: "hm-rega.0.14733"/*HZ-Mode WC und VR_EG*/, change: "ne" }, function (obj) { if (obj.state.val == 91){ .... -
fehlt da nicht in deinem ersten Code das (obj)
on({id: "hm-rega.0.14733"/*HZ-Mode WC und VR_EG*/, change: "ne" }, function (obj) { if (obj.state.val == 91){ .... ```` ` … ok, der Teufel steckt wiedermal im Detail!Herzlichen Dank für die schnelle Antwort!
Liebe Grüße
tom
Gesendet mit Tapatalk