NEWS
Wert wird nicht richtig ausgewertet
-
Hallo ich habe ein Problem mit meinem Script
createState('tablett.zustand','0'); createState('tablett.akku','0'); on("pushbullet.0.push.payload"/*Content of Push*/, function(data) { var zustand = data.newState.val, einaus = ""; if (zustand <= 20 || zustand <= '20') { // kommt als Zahl oder als String setState ('javascript.0.tablett.zustand', true ); setState("hm-rpc.0.LEQ0531415.1.STATE"/*HM-ES-PMSw1-Pl LEQ0531415:1.STATE*/,true); einaus = 'ein'; } else if (zustand >= 90 || zustand >= '90' ) { setState ('javascript.0.tablett.zustand', false ); setState("hm-rpc.0.LEQ0531415.1.STATE"/*HM-ES-PMSw1-Pl LEQ0531415:1.STATE*/,false); einaus = 'aus'; } log('Tablet-Zustand: ' + zustand + ' / ' + einaus); setState ('tablett.akku',zustand); });
wenn ich die werte 91 bis 99 zusende schaltet die steckdose aus
bei 100 und gößer wieder ein ??
anbei die log einträge
javascript-0 2015-11-27 14:14:16 info script.js._pushbulllet_auswerten: Tablet-Zustand: 105 / ein
javascript-0 2015-11-27 14:14:12 info script.js._pushbulllet_auswerten: Tablet-Zustand: 102 / ein
javascript-0 2015-11-27 14:14:08 info script.js._pushbulllet_auswerten: Tablet-Zustand: 101 / ein
javascript-0 2015-11-27 14:14:03 info script.js._pushbulllet_auswerten: Tablet-Zustand: 100 / ein
javascript-0 2015-11-27 14:14:00 info script.js._pushbulllet_auswerten: Tablet-Zustand: 99 / aus
javascript-0 2015-11-27 14:13:57 info script.js._pushbulllet_auswerten: Tablet-Zustand: 98 / aus
javascript-0 2015-11-27 14:13:55 info script.js._pushbulllet_auswerten: Tablet-Zustand: 97 / aus
javascript-0 2015-11-27 14:13:51 info script.js._pushbulllet_auswerten: Tablet-Zustand: 95 / aus
javascript-0 2015-11-27 14:13:48 info script.js._pushbulllet_auswerten: Tablet-Zustand: 94 / aus
gruß Stephan
-
Der String-Vergleich funktioniert bei Werten >= "100" und < "10" nicht. Versuche es mal so:
var zustand = parseInt(data.newState.val),
Dann kanst Du den String-Vergleich weglassen.