NEWS
HM Thermostat Modi abfragen
-
Hi,
ich sehe meinen Fehler nicht. Ich mochte abfragen ob alle meine Thermostate im Auto Modus sind, leider klappt die IF Abfrage nicht.
//*****************KONTROLLE MODUS****************************************** function modi() { if(eins&&zwei&&drei&&vier&&fuenf=="0") { setState("javascript.0.thermostate.auto", true); } else { setState("javascript.0.thermostate.auto", false); toLog('xxxxxxxxxxxxxx') } } //**************CONTROL MODE************** //Bad oben on({id: "hm-rpc.0.MEQ0447885.4.CONTROL_MODE"}, function() { eins = getState("hm-rpc.0.MEQ0447885.4.CONTROL_MODE").val; modi(); }); //Küche on({id: "hm-rpc.0.MEQ0447885.4.CONTROL_MODE"}, function() { zwei = getState("hm-rpc.0.MEQ0447885.4.CONTROL_MODE").val; modi(); }); //Lina on({id: "hm-rpc.0.MEQ0447699.4.CONTROL_MODE"}, function() { drei = getState("hm-rpc.0.MEQ0447699.4.CONTROL_MODE").val; modi(); }); //Stube on({id: "hm-rpc.0.MEQ0480054.2.CONTROL_MODE"}, function() { vier = getState("hm-rpc.0.MEQ0480054.2.CONTROL_MODE").val; modi(); }); //Vorbau on({id: "hm-rpc.0.MEQ0447728.4.CONTROL_MODE"}, function() { fuenf = getState("hm-rpc.0.MEQ0447728.4.CONTROL_MODE").val; modi(); });Was auch festzustellen ist, die funktion wird rlativ häufig aufgerufen obwohl ich am Thermostat den Modus nicht ändere.

-
Die if-Konstruktion funktioniert nicht. Vesuche es mal so:
if(Math.max(eins, zwei, drei, vier, fuenf) == 0)Anmerkung: Wenn der Wert des auslösenden Datenpunktes abgefragt werden soll, dann besser so:
on({id: "hm-rpc.0.MEQ0447885.4.CONTROL_MODE"}, function(dp) { eins = dp.newState.val; modi(); }); -
Anmerkung: Wenn der Wert des auslösenden Datenpunktes abgefragt werden soll, dann besser so:
on({id: "hm-rpc.0.MEQ0447885.4.CONTROL_MODE"}, function(dp) { eins = dp.newState.val; modi(); }); ```` `Sorry,
das habe ich beim letzten mal schon gelernt. :roll: Habe hier noch den "alten" Müll rein kopiert.
Denn Rest werde ich morgen ausprobieren…
-
Die if-Konstruktion funktioniert nicht. Vesuche es mal so:
if(Math.max(eins, zwei, drei, vier, fuenf) == 0) ```` `Doch noch schnell probiert, und mir die Math.max Methode? angeschaut. Klappt nicht so wirklich. Aus meiner Sicht gibt control.mode auch einen String zurück.?? :oops:
-
Aus meiner Sicht gibt control.mode auch einen String zurück.?? `
Nein, das ist eine Werteliste:var id = "hm-rpc.0.KEQ0909458.4.CONTROL_MODE"; var x = getState(id).val; log("CONTROL_MODE: " + x + " Typ: " + typeof x);> javascript-0 2015-10-29 22:40:21 info script.js._Multistate-Test: CONTROL_MODE: 1 Typ: number -
Okay. Vielen Dank.
Ich werde die nächsten Tage ausgiebig testen…
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