NEWS
Werte der CCU-Systemvariable auslesen
-
Ich bitte um Programmierhilfe:
in der CCU habe ich eine Systemvariable des Typs Werteliste mit den Werten "rein, raus, stop" angelegt. Diese möchte ich nun in Javascript auslesen.
Mein Programm:
/##############Aufruf über Start########################## var idSV = 'hm-rega.0.47789'/*Markise*/; var idStart = 'broadlink2.0.RM:RMPRO-MOVE315-63-30-49.L.CODE_blablabla'/*Markise rein*/; var WertidSV = getState(idSV).val; on({id:idSV, change: 'any'}, function () { if (WertidSV == 0) { log('WertidSV= ' + WertidSV); setState(idStart, true) }; log('idSV= ' + idSV); log('idStart= ' + idStart); });gibt mir leider die Werte nicht zurück. In den Objekten des iobrokers steht als Wert z. B. "(0)rein". Aber den Wert gibt mir mein kleines Programm weder unter "WertidSV" noch unter "idSV" aus. Da steht immer nur:
javascript.0 (23213) script.js.common.Broadlink_Klima_u_Markise.Broadlink_Markise_rein: WertidSV= 1Was mache ich falsch? Danke für Hilfe.
-
Ich bitte um Programmierhilfe:
in der CCU habe ich eine Systemvariable des Typs Werteliste mit den Werten "rein, raus, stop" angelegt. Diese möchte ich nun in Javascript auslesen.
Mein Programm:
/##############Aufruf über Start########################## var idSV = 'hm-rega.0.47789'/*Markise*/; var idStart = 'broadlink2.0.RM:RMPRO-MOVE315-63-30-49.L.CODE_blablabla'/*Markise rein*/; var WertidSV = getState(idSV).val; on({id:idSV, change: 'any'}, function () { if (WertidSV == 0) { log('WertidSV= ' + WertidSV); setState(idStart, true) }; log('idSV= ' + idSV); log('idStart= ' + idStart); });gibt mir leider die Werte nicht zurück. In den Objekten des iobrokers steht als Wert z. B. "(0)rein". Aber den Wert gibt mir mein kleines Programm weder unter "WertidSV" noch unter "idSV" aus. Da steht immer nur:
javascript.0 (23213) script.js.common.Broadlink_Klima_u_Markise.Broadlink_Markise_rein: WertidSV= 1Was mache ich falsch? Danke für Hilfe.
-
@skorpil sagte:
Was mache ich falsch?
Die Variable WertidSV muss auch aktualisiert werden.
on(idSV, function (dp) { WertidSV = dp.state.val; if (WertidSV == 0) { -
@skorpil sagte:
Was mache ich falsch?
Die Variable WertidSV muss auch aktualisiert werden.
on(idSV, function (dp) { WertidSV = dp.state.val; if (WertidSV == 0) {Das war es! Vielen herzlichen Dank.
Darf ich Dich noch um eine Erklärung bitten "muss auch aktualisiert werden" . ich dachte, wenn ich mit "on({id:idSV, change: 'any'}, function ()" arbeite, wird jeweoös der aktuelle Wert benutzt.
Und noch eine Frage: warum wird jetzt nur der numerische Wert (0,1,2,3) ausgegeben und nicht die Inhalte der SV "rein, raus, stop"? Ich kann mit den Zahlen ja gut weiterarbeiten, aber es interessiert mich halt, um für die Zukunft daraus zu lernen.
Dankeschön und schönen Abend
-
Das war es! Vielen herzlichen Dank.
Darf ich Dich noch um eine Erklärung bitten "muss auch aktualisiert werden" . ich dachte, wenn ich mit "on({id:idSV, change: 'any'}, function ()" arbeite, wird jeweoös der aktuelle Wert benutzt.
Und noch eine Frage: warum wird jetzt nur der numerische Wert (0,1,2,3) ausgegeben und nicht die Inhalte der SV "rein, raus, stop"? Ich kann mit den Zahlen ja gut weiterarbeiten, aber es interessiert mich halt, um für die Zukunft daraus zu lernen.
Dankeschön und schönen Abend
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