NEWS
[gelöst] Script in vis starten oder stopen. Zusätzlich per Radar und Anwesendheitserkennung
-
@ringdingringding:Bin ich den komplett flasch mit meinem Ansatz? `
Optisch sieht es gut aus.Setz doch mal ein "Debug output Wert von countHere" oberhalb der Bedingungen ein.
Dann kann man sehen ob der Trigger überhaupt auslöst und welchen Wert "countHere" hat.
Grüße
-
radar.0 2018-01-04 16:27:18.725 info ScanAll: From all 0 devices dedected 0 are whoHere:
und
radar.0 2018-01-04 16:24:21.803 info ScanAll: From all 1 devices dedected 1 are whoHere: DanyelIP
Das scheint also schonmal zu funktionieren.
Aber warum der rest nicht?
-
@ringdingringding:Aber warum der rest nicht? `
Mal gemacht was ich geschrieben habe? :roll:
-
-
Und kommt die Debug-Ausgabe?
Wenn nicht, liegt es an dem "countHere".
Was ist das für ein Datenpunkt? (Screenshot)
Du lässt Dir aber auch die Infos aus der Nase ziehen.
-
Sorry bin neu hier und fummel mich gerade erst rein in blockly
Datenpunkt kommt von Radar und ändert sich auch brav
countHere 0 für keiner im Haus und je nachdem wieviel IPs ich eingetragen habe 1, 2 oder 3
Wenn keiner im Haus soll javascript.0.Virtueller_Schalter_Alarm auf true gehen und wenn wieder min. einer im Haus ist auf false
-
Hmm. Soweit alles gut.
Da fallen mir nur noch zwei Möglichkeiten ein.
1. das Script ist nicht gestartet (geh ich jetzt mal nicht von aus )
2. Du hast das Blockly unter "global" abgespeichert. (da gehört es auf keinen Fall hin!!!)
-
hmmm
und nun?
-
Liegt es evtl an dem Datenpunkt der geändert werden soll?
Über die Vis kann ich diesen per Schalter auf true oder false ändern.
Das klappt auch soweit.
-
Alles sehr merkwürdig
Wird denn getriggert?
Bekommst du im LOG den Wert von "countHere" angezeigt, wenn dieser sich ändert?
Deshalb solltest Du ja den Debug-Baustein einsetzen.
-
Nimm mal die "states" aus Deinem Datenpunkt raus.
Bei mir sieht ein Logikwert so aus.
-
states hab ich entfernt
ich war im flugmodus:
javascript.0 2018-01-04 18:33:29.130 info script.js.common.Anwesend_ping_Kontrolle: getState(id=radar.0.countHere, timerId=0) => {"val":0,"ack":true,"ts":1515087209124,"q":0,"from":"system.adapter.radar.0","lc":1515087209124}
ich war wieder online:
javascript.0 2018-01-04 18:34:29.199 info script.js.common.Anwesend_ping_Kontrolle: getState(id=radar.0.countHere, timerId=0) => {"val":1,"ack":true,"ts":1515087269182,"q":0,"from":"system.adapter.radar.0","lc":1515087269182}
-
Hier nochmal der ist zustand als code
on({id: 'radar.0.countHere', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; console.debug(getState("radar.0.countHere").val); if (parseFloat('radar.0.countHere') == 0) { setState("javascript.0.Virtueller_Schalter_Alarm"/*Virtueller_Schalter_Alarm*/, true, true); console.log('Fensterkontrolle wurde Aktiviert Ping sagt keiner zuhause'); } if (parseFloat('radar.0.countHere') > 0) { setState("javascript.0.Virtueller_Schalter_Alarm"/*Virtueller_Schalter_Alarm*/, false, true); console.log('Fensterkontrolle wurde Deaktiviert Ping sagt einer ist wieder zuhause'); } });
-
@ringdingringding:javascript.0 2018-01-04 18:34:29.199 info script.js.common.Anwesend_ping_Kontrolle: getState(id=radar.0.countHere, timerId=0) => {"val":1,"ack":true,"ts":1515087269182,"q":0,"from":"system.adapter.radar.0","lc":1515087269182} `
Ist das die Ausgabe von "Debug output wert von countHere" ???? -
Jetzt steh ich aufm schlauch!?
da steht info und nicht debug richtig? müßte debug stehen dann oder?
da kommt aber nichts
-
Muss denn bei der Umwandlung "nach Zahl" nicht der "Wert von Objekt-Id" umgewandelt werden? oder ist das so richtig, wie oben gezeigt?
Enrico
-
Meine Fresse. Das wars
Das hab ich nicht gesehen.
Es geht.
` > on({id: 'radar.0.countHere', change: "ne"}, function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
console.warn(getState("radar.0.countHere").val);
if (parseFloat(getState("radar.0.countHere").val) == 0) {
setState("javascript.0.Virtueller_Schalter_Alarm"/Virtueller_Schalter_Alarm/, true, true);
console.log('Fensterkontrolle wurde Aktiviert Ping sagt keiner zuhause');
}
if (parseFloat(getState("radar.0.countHere").val) > 0) {
setState("javascript.0.Virtueller_Schalter_Alarm"/Virtueller_Schalter_Alarm/, false, true);
console.log('Fensterkontrolle wurde Deaktiviert Ping sagt einer ist wieder zuhause');
}
}); `
"Wert von objekt id" und nicht einfach nur "objekt id"
Danke für eure Hilfe
Gruß Danyel
-
Muss denn bei der Umwandlung "nach Zahl" nicht der "Wert von Objekt-Id" umgewandelt werden? oder ist das so richtig, wie oben gezeigt? `
Ohhh man….................... :roll:Ich werde alt
Gut aufgepasst RappiRN :!: :!:
Zumal man eine Zahl nicht in eine Zahl wandeln muss.
EDIT: Hilfreich sind Exports von Blocklys nicht eine Copy des Scripts.
-
Gut aufgepasst RappiRN :!: :!: `
Kennst du die Geschichte vom blinden Huhn?? :lol: :lol:
Enrico