NEWS
Variable abfragen
-
Hallo,
ich stehe gerade auf dem Schlauch.
Ich möchte eine Variable, die ich mittels VIS setze abfrage, konkret wird hier eine Beleuchtung gesteuert.
Die Variable heisst "BeleuchtungTerassenueberdachung".
Wenn ich diesen Schnipsel hier verwende, landet das Ganze - warum auch immer - in einer Endlosschleife:
on({id: "BeleuchtungTerassenueberdachung", valNe: 2}, function(obj) // VIS Taster Beleuchtung Terasse { if (getState("BeleuchtungTerassenueberdachung").val == false) { log("EVENT ERKANNT: Taster Beleuchtung Terasse Tastendruck kurz unten (ein)","info"); if (getState("hm-rpc.0.LEQ0022668.1.STATE").val == true) { setState('hm-rpc.0.LEQ0022668.4.STATE', 'false'); // Licht Terassenüberdachung innen einschalten setState('hm-rpc.0.LEQ0022668.3.STATE', 'false'); // Licht Terrassenüberdachung Aussenring einschalten } else { log("EVENT ERKANNT: Taster Beleuchtung Terasse Tastendruck kurz unten (ein), Aussenbeleuchtung ist ein","info"); setState('hm-rpc.0.LEQ0022668.4.STATE', 'false'); // Licht Terassenüberdachung innen einschalten } setState('BeleuchtungTerassenueberdachung', 'true'); // Variable "BeleuchtungTerassenueberdachung" auf true setzen } else { log("EVENT ERKANNT: Taster Beleuchtung Terasse Tastendruck kurz oben (aus)","info"); if (getState("hm-rpc.0.LEQ0022668.1.STATE").val == false) { log("EVENT ERKANNT: Taster Beleuchtung Terasse Tastendruck kurz oben (aus), Aussenbeleuchtung ist ein","info"); setState('hm-rpc.0.LEQ0022668.4.STATE', 'true'); // Licht Terassenüberdachung innen ausschalten } else { setState('hm-rpc.0.LEQ0022668.4.STATE', 'true'); // Licht Terassenüberdachung innen ausschalten setState('hm-rpc.0.LEQ0022668.3.STATE', 'true'); // Licht Terrassenüberdachung Aussenring ausschalten } setState('BeleuchtungTerassenueberdachung', 'false'); // Variable "BeleuchtungTerassenueberdachung" auf false setzen } });
Seh ich den Wald vor lauter Bäumen nicht?
-
Hat sich erledigt,
hab es nun über eine Szene gelöst. Läuft super!
1148_heizung.txt
1148_screenshot_3.jpg -
Hallo,
scheint eine Schleife zu sein:
Wenn Variable = false (Zeile 3, erstes If)
Dann setzte variable = true (Zeile 16)
Dadurch ändert sich der Wert, "on" triggert und der else-Teil wird abgearbeitet (wenn true, setze false).
Und dann geht s wieder von vorn los.
Probier mal den neuen Szene Adapter, der ist doch genau dafür.
Gruß
Pix
-
Hat sich erledigt,
hab es nun über eine Szene gelöst. Läuft super! `
Hui, da warst du selbst schneller.