NEWS
Reaktion auf PRESS.SHORT
-
Hallo,
mein Skript startet nicht bei einer Funktion "PRESS.SHORT". Ist vermutlich function() was nicht geht.
Wie muss das heißen??
function Klingel() { log("---> Klingel hat geklingelt","info"); setState("hm-rpc.0.MEQ0278253.1.SUBMIT"/*HM-OU-CM-PCB MEQ0278253:1.SUBMIT*/, "0.1,1,108000"); setState("hm-rpc.0.MEQ0278253.1.STATE"/*HM-OU-CM-PCB MEQ0278253:1.STATE*/, true); } on("hm-rpc.0.LEQ1220784.1.PRESS_SHORT"/*Türklingel Sensor.PRESS_SHORT*/, function() { log("===>Ausgelöst durch Klingelsensor!"); Klingel (); });
-
on({"hm-rpc.0.LEQ1220784.1.PRESS_SHORT"/*Türklingel Sensor.PRESS_SHORT*/, val:true}, function() { log("===>Ausgelöst durch Klingelsensor!"); Klingel (); });
Ich glaub so ist das richtig.
-
Hi,
kommt im log ausgelöst durch Klingel….?
Der Aufruf (on function) sieht eigentlich gut aus. Was mir ausgefallen ist, der Klingel function Aufruf hat ein Leerzeichen drin.... Klingel () ...... So sieht es zumindest auf dem Smartphone aus.
(Was noch zu erwähnen wäre, diese Schreibweise im on Aufruf reagiert auf jede Zustandsänderung. [Denke ich zumindest, vielleicht kann das jemand bestätigen] Das bedeutet das auch beim loslassen der Klingel die function durchlaufen wird. Aus meiner Sicht würde es mehr Sinn machen nur beim wert "true" die Klingel function durchlaufen zu lassen.)
Vergessen: das müsste dann so aussehen…..
on({id: XYZ, val: true}, function() {
Mache irgendwas;
});
-
mach Sinn Habe nun den folgenden code
on({5698: "hm-rpc.0.LEQ1220784.1.PRESS_SHORT", val: true}, function() { log("---> Klingel hat geklingelt","info"); setState("hm-rpc.0.MEQ0278253.1.SUBMIT"/*HM-OU-CM-PCB MEQ0278253:1.SUBMIT*/, "0.1,1,108000"); setState("hm-rpc.0.MEQ0278253.1.STATE"/*HM-OU-CM-PCB MEQ0278253:1.STATE*/, true); });
Bekomme aber im Skripteditor den folgenden Fehler:
Missing ";" before statment.
Aber wo fehlt da noch ein ; ???
-
Aber wo fehlt da noch ein ; ??? `
Nirgends. Vermutlich stört on({5698: …. Versuche es mal miton({id: "hm-rpc.0.LEQ1220784.1.PRESS_SHORT", val: true}, function() { ...
-
so geht´s jetzt….
on({id: "hm-rpc.0.LEQ1220784.1.PRESS_SHORT", val: true}, function() { var idKlingel = "hm-rpc.0.LEQ1220784.1.PRESS_SHORT"; log("---> Klingel hat geklingelt","info"); setState("hm-rpc.0.MEQ0278253.1.SUBMIT"/*HM-OU-CM-PCB MEQ0278253:1.SUBMIT*/, "0.5,1,108000,004"); setState("hm-rpc.0.MEQ0278253.1.STATE"/*HM-OU-CM-PCB MEQ0278253:1.STATE*/, true); });
-
….prima
-
var idKlingel = "hm-rpc.0.LEQ1220784.1.PRESS_SHORT"; ```` `
Die Deklaration einer Variablen, die nirgends verwendet wird, kann (sollte) entfallen. Sonst so:
var idKlingel = "hm-rpc.0.LEQ1220784.1.PRESS_SHORT"; on({id: idKlngel, val: true}, function() { log("---> Klingel hat geklingelt","info"); setState("hm-rpc.0.MEQ0278253.1.SUBMIT"/*HM-OU-CM-PCB MEQ0278253:1.SUBMIT*/, "0.5,1,108000,004"); setState("hm-rpc.0.MEQ0278253.1.STATE"/*HM-OU-CM-PCB MEQ0278253:1.STATE*/, true); });
So sollte es auch funktionieren (ursprünglicher Ansatz mit Funktionsaufruf):
function Klingel() { log("---> Klingel hat geklingelt","info"); setState("hm-rpc.0.MEQ0278253.1.SUBMIT"/*HM-OU-CM-PCB MEQ0278253:1.SUBMIT*/, "0.1,1,108000"); setState("hm-rpc.0.MEQ0278253.1.STATE"/*HM-OU-CM-PCB MEQ0278253:1.STATE*/, true); } var idKlingel = "hm-rpc.0.LEQ1220784.1.PRESS_SHORT"; on({id: idKlngel, val: true}, Klingel);
-
Hi,
on({id: 'hm-rpc.0.PEQ0653702.1.PRESS_SHORT', val: true, ack: true}, main)
Mein (aus dem Forum übernommenes) Skript wird über die HM Türklingel getriggert.
Das Phänomen: Mal wird es nur 1x getriggert wenn ich den Button drücke, aber regelmäßig auf mehrfach (2 -4 mal)Habt ihr eine Idee woran das liegt?
Das Skript sendet einen Screenhot der Kamera an der Haustür wenn jmd. klingelt. Mir reicht da eine Nachricht und nicht bis zu vier