Ah ja, ich verstehe …. ein bischen
Vielen Dank für die Erklärung.
Doch dieses Problem verfolgt mich:
on({id: "hm-rpc.0.KEQ0111275.2.PRESS_SHORT"/*HM-RC-X KEQ0111275:2.PRESS_SHORT*/}, function (obj) { //Taste auf Fernbedienung
if(obj.state.val)
Alarmanlage_an();
});
function Alarmanlage_an(){
if (!getState("hm-rpc.0.KEQ0030837.1.STATE").val){ //Wenn Fensterkontakt "zu"
setState("hm-rega.0.1587"/*Alarmanlage*/, "1"); //Systemvariable der CCU auf 1 = Scharf
}
}
on({id: "hm-rega.0.1587"/*Alarmanlage*/, change: "1"}, function (obj) { //Wenn Alarmanlage scharf
if(obj.state.val){
request("http://192.168.2.144:50000/track=Die_Alarmanlage_ist_an.mp3"); //Tablet soll ansage mache- geht aber nur eine Zeitlang, dann bleibt alles stumm
sendTo("telegram", "send", {
text: (String('Alarmanlage ist ') + String((obj.state ? obj.state.val : "") ? 'an' : 'aus'))
});
}
});
Das log-File sieht dann so aus:
20:32:06.546 [info] javascript.0 script.js.Telegram.Alarmanlage: getState(id=hm-rpc.0.KEQ0030837.1.STATE, timerId=0) => {"val":false,"ack":true,"ts":1517048026193,"q":0,"from":"system.adapter.hm-rpc.0","lc":1517048026193}
20:32:06.548 [warn] javascript.0 at Alarmanlage_an (script.js.Telegram.Alarmanlage:25:9)
20:32:06.548 [warn] javascript.0 at Object. (script.js.Telegram.Alarmanlage:15:9)
20:32:06.548 [info] javascript.0 script.js.Telegram.Alarmanlage: setForeignState(id=hm-rega.0.1587, state="1")
20:32:06.548 [info] javascript.0 script.js.Telegram.Alarmanlage: In dieser Funktion die Alarmanlage anschalten.
20:32:06.565 [info] javascript.0 script.js.Telegram.Alarmanlage: sendTo(adapter=telegram, cmd=send, msg={"text":"Alarmanlage ist an"})
20:32:17.746 [info] javascript.0 script.js.Telegram.Alarmanlage: sendTo(adapter=telegram, cmd=send, msg={"text":"Alarmanlage ist an"})
Die Warnungen beziehen sich auf die Zeile mit dem "setState …"
Also wieder diese blöde doppelte Ausführung. Heulsmiley
Was mache ich denn nun wieder falsch?
Gruß Jörg