NEWS
[gelöst] Daten aus Homewizard - JSON -Datei in iobroker als Geräte mit Status anzeigen
-
Hallo,
Nach wenigen Tagen iobroker bin ich begeistert. Vieles, das ich mir vorgenommen hatte, läuft schon.
Nun will ich erste Schritte Richtung Visualisierung unternehmen. Dafür sollten natürlich meine Schalter mit jeweiligen Status darstellbar sein.
Ich nutze eine Zentrale von HomeWizard.
Dort sind die Stati in einer Json Datei hinterlegt.
Das sieht aktuell so aus:
{"status": "ok", "version": "3.38", "request": {"route": "/swlist.json" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"off","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"off","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"},
…
Nun meine Frage: wie bekomme ich es hin, dass beispielsweise der Schalter mit der ID 3 mit dem Namen Drucker inklusive Status in Iobroker angezeigt wird beziehungsweise zu Verfügung steht, dass ich ihm in der Visualisierung einbauen kann?
Bei JavaSkript etc. habe ich leider nicht den Durchblick
Schon vorab vielen Dank
Markus `
Ist das die komplette JSON Ausgabe?
-
Die komplette json-Ausgabe:
{"status": "ok", "version": "3.38", "request": {"route": "/swlist" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"off","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"off","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"},{"id":8,"name":"Lampe Steffi","type":"hue","status":"off","hue_id":0,"light_id":13,"color":{"hue":4,"sat":0,"bri":57},"favorite":"no"},{"id":9,"name":"Hue iris schwar","type":"hue","status":"off","hue_id":0,"light_id":7,"color":{"hue":0,"sat":81,"bri":52},"favorite":"no"},{"id":10,"name":"Hue iris clear","type":"hue","status":"off","hue_id":0,"light_id":5,"color":{"hue":5,"sat":0,"bri":0},"favorite":"no"},{"id":11,"name":"Hue lightstrip ","type":"hue","status":"off","hue_id":0,"light_id":6,"color":{"hue":0,"sat":0,"bri":50},"favorite":"no"},{"id":12,"name":"Wohnzimmertisch","type":"dimmer","status":"off","hue_id":0,"light_id":2,"dimlevel":42,"favorite":"no"},{"id":13,"name":"Flur","type":"switch","status":"off","favorite":"no"},{"id":14,"name":"Badezimmer","type":"switch","status":"off","favorite":"no"},{"id":15,"name":"Kueche","type":"switch","status":"off","favorite":"no"},{"id":16,"name":"Lichtbox","type":"hue","status":"off","hue_id":0,"light_id":10,"color":{"hue":244,"sat":99,"bri":95},"favorite":"no"},{"id":17,"name":"Stern","type":"switch","status":"off","favorite":"no"},{"id":19,"name":"Bs","type":"switch","status":"off","favorite":"no"},{"id":20,"name":"Bs","type":"switch","status":"off","favorite":"no"}]}
MOD-Edit by eric2905; Code-Tags eingefügt
-
Die komplette json-Ausgabe:
{"status": "ok", "version": "3.38", "request": {"route": "/swlist" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"off","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"off","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"},{"id":8,"name":"Lampe Steffi","type":"hue","status":"off","hue_id":0,"light_id":13,"color":{"hue":4,"sat":0,"bri":57},"favorite":"no"},{"id":9,"name":"Hue iris schwar","type":"hue","status":"off","hue_id":0,"light_id":7,"color":{"hue":0,"sat":81,"bri":52},"favorite":"no"},{"id":10,"name":"Hue iris clear","type":"hue","status":"off","hue_id":0,"light_id":5,"color":{"hue":5,"sat":0,"bri":0},"favorite":"no"},{"id":11,"name":"Hue lightstrip ","type":"hue","status":"off","hue_id":0,"light_id":6,"color":{"hue":0,"sat":0,"bri":50},"favorite":"no"},{"id":12,"name":"Wohnzimmertisch","type":"dimmer","status":"off","hue_id":0,"light_id":2,"dimlevel":42,"favorite":"no"},{"id":13,"name":"Flur","type":"switch","status":"off","favorite":"no"},{"id":14,"name":"Badezimmer","type":"switch","status":"off","favorite":"no"},{"id":15,"name":"Kueche","type":"switch","status":"off","favorite":"no"},{"id":16,"name":"Lichtbox","type":"hue","status":"off","hue_id":0,"light_id":10,"color":{"hue":244,"sat":99,"bri":95},"favorite":"no"},{"id":17,"name":"Stern","type":"switch","status":"off","favorite":"no"},{"id":19,"name":"Bs","type":"switch","status":"off","favorite":"no"},{"id":20,"name":"Bs","type":"switch","status":"off","favorite":"no"}]}
Warum aufgegeben?
Wenn ich nachher Zeit finde, erstelle ich dir ein Skript. Falls noch Interesse besteht
MOD-Edit by eric2905; Code-Tags auch in Quote eingefügt
-
wenn ich es richtig verstanden haben, möchtest du für alles was in response steht Datenpunkte anlegen und diese Updaten ?!
Hiermit wird der JSON -Teil 'response' zerlegt und je nach Datentyp dynamisch ein State angelegt oder upgedatet
`J='{"status": "ok", "version": "3.38", "request": {"route": "/swlist.json" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"off","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"off","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"}]}' CreateDevices(JSON.parse(J)); function CreateDevices(data){ var Group_by='name' for (i = 0; i < data.response.length; i++) { for (var ObjName in data.response[i]) { if (getState('javascript.0.tests.Devices.'+data.response[i][Group_by].toString().replace(/\s+/g, '')+'.'+ObjName).val===null) { createState('javascript.0.tests.Devices.'+data.response[i][Group_by].toString().replace(/\s+/g, '')+'.'+ObjName,data.response[i][ObjName],{type: typeof data.response[i][ObjName], role: ObjName}); console.log('ERSTELLT'); } else{setState('javascript.0.tests.Devices.'+data.response[i][Group_by].toString().replace(/\s+/g, '')+'.'+ObjName,data.response[i][ObjName],akt=true)} } } }//End of Function CreateDevices` [/i][/i][/i][/i][/i][/i][/i]
-
Die komplette json-Ausgabe:
{"status": "ok", "version": "3.38", "request": {"route": "/swlist" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"off","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"off","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"},{"id":8,"name":"Lampe Steffi","type":"hue","status":"off","hue_id":0,"light_id":13,"color":{"hue":4,"sat":0,"bri":57},"favorite":"no"},{"id":9,"name":"Hue iris schwar","type":"hue","status":"off","hue_id":0,"light_id":7,"color":{"hue":0,"sat":81,"bri":52},"favorite":"no"},{"id":10,"name":"Hue iris clear","type":"hue","status":"off","hue_id":0,"light_id":5,"color":{"hue":5,"sat":0,"bri":0},"favorite":"no"},{"id":11,"name":"Hue lightstrip ","type":"hue","status":"off","hue_id":0,"light_id":6,"color":{"hue":0,"sat":0,"bri":50},"favorite":"no"},{"id":12,"name":"Wohnzimmertisch","type":"dimmer","status":"off","hue_id":0,"light_id":2,"dimlevel":42,"favorite":"no"},{"id":13,"name":"Flur","type":"switch","status":"off","favorite":"no"},{"id":14,"name":"Badezimmer","type":"switch","status":"off","favorite":"no"},{"id":15,"name":"Kueche","type":"switch","status":"off","favorite":"no"},{"id":16,"name":"Lichtbox","type":"hue","status":"off","hue_id":0,"light_id":10,"color":{"hue":244,"sat":99,"bri":95},"favorite":"no"},{"id":17,"name":"Stern","type":"switch","status":"off","favorite":"no"},{"id":19,"name":"Bs","type":"switch","status":"off","favorite":"no"},{"id":20,"name":"Bs","type":"switch","status":"off","favorite":"no"}]} `
Warum aufgegeben?Wenn ich nachher Zeit finde, erstelle ich dir ein Skript. Falls noch Interesse besteht `
Das wäre super! Vielen Dank! Mir fehlt leider einfach die Kenntnis bei Java Script. Wie ich es aus den vorherigen Kommentaren entnommen habe, scheint das für Leute, die sich da auskennen, auch kein großes Problem zu sein. Als völlig ahnungsloser stehe ich wie der sprichwörtliche „Ochs vorm Berg“
-
Grundsätzlich Ja, allerdings in dem Skript, wurde hier die Json hinter das J= kopiert - die müsste m.E. dynamisch vom url-Pfad abgerufen werden.
Würde man da nicht sowas wie ein url- Aufruf einbauen?
Ziel sind dann Devices / Datenpunkte mit dem Wert true/false bzw. an oder aus.
Wenn die Datenpunkte automatisiert erstellt werden, müsste ID und Name mitkommen.
Schon mal vielen Dank!
Markus
wenn ich es richtig verstanden haben, möchtest du für alles was in response steht Datenpunkte anlegen und diese Updaten ?!
Hiermit wird der JSON -Teil 'response' zerlegt und je nach Datentyp dynamisch ein State angelegt oder upgedatet
`J='{"status": "ok", "version": "3.38", "request": {"route": "/swlist.json" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"off","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"off","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"}]}' CreateDevices(JSON.parse(J)); function CreateDevices(data){ for (i = 0; i < data.response.length; i++) { for (var ObjName in data.response[i]) { if (getState('javascript.0.tests.Devices.'+data.response[i].name.replace(/\s+/g, '')+'.'+ObjName).val===null) { createState('javascript.0.tests.Devices.'+data.response[i].name.replace(/\s+/g, '')+'.'+ObjName,data.response[i][ObjName],{type: typeof data.response[i][ObjName], role: ObjName}); console.log('ERSTELLT'); } else{setState('javascript.0.tests.Devices.'+data.response[i].name.replace(/\s+/g, '')+'.'+ObjName,data.response[i][ObjName],akt=true)} } } }//End of Function CreateDevices` [/i][/i][/i][/i][/i][/i][/i] ``` `
-
ich habe deinen JSON in die Variable J geschrieben da ich deine Datenquelle nicht kenne, J ist für mich stellvertretend dafür.
in deinem Fall wird er wohl im Body einer http Response stehen…
mein Skript für zu folgendem Ergebnis
2611_unbenannt.jpg -
Das sieht sehr gut aus!
Ich schau mal, wie ich das aus der URL ziehe.
Ich denke mit
var request = require(‘request‘)
var link = http://192.168.1.xx/xxxx/swlist.json
Sollte ich dahin kommen.
Probiere das, sobald ich wieder am Rechner bin.
Dann schreib ich hier ein Update!
Danke und liebe Grüße
Markus
ich habe deinen JSON in die Variable J geschrieben da ich deine Datenquelle nicht kenne, J ist für mich stellvertretend dafür.
in deinem Fall wird er wohl im Body einer http Response stehen…
mein Skript für zu folgendem Ergebnis `
-
ich habe den Code oben noch mal geändert, es war noch eine Fehler drin ! Statenamen dürfen keine Leerzeichen haben..
außerdem kann du jetzt mit 'Group_by' einstellen ob nach id oder Name gruppiert werden soll
-
Das sieht sehr gut aus!
Ich schau mal, wie ich das aus der URL ziehe.
Ich denke mit
var request = require(‘request‘)
var link = http://192.168.1.xx/xxxx/swlist.json
Sollte ich dahin kommen.
Probiere das, sobald ich wieder am Rechner bin.
Dann schreib ich hier ein Update!
Danke und liebe Grüße
Markus `
könnte so funktionieren, momentan aber ohne großartige Fehlerbehandlung !
`var request = require('request'); var options = { url: 'http://192.168.1.xx/xxxx/swlist.json' }; request(options,function (error, response, body){ console.error(error); if (!error){ CreateDevices(JSON.parse(body)); console.log(body); } else{ console.error(error);} }); function CreateDevices(data){ var Group_by='name'; for (i = 0; i < data.response.length; i++) { for (var ObjName in data.response[i]) { if (getState('javascript.0.tests.Devices.'+data.response[i][Group_by].toString().replace(/\s+/g, '_')+'.'+ObjName).val===null) { createState('javascript.0.tests.Devices.'+data.response[i][Group_by].toString().replace(/\s+/g, '_')+'.'+ObjName,data.response[i][ObjName],{type: typeof data.response[i][ObjName], role: ObjName}); console.log('ERSTELLT'); } else{setState('javascript.0.tests.Devices.'+data.response[i][Group_by].toString().replace(/\s+/g, '_')+'.'+ObjName,data.response[i][ObjName],akt=true)} } } }//End of Function CreateDevices` [/i][/i][/i][/i][/i][/i][/i]
-
Und hier das Update:
Super!
Es hat geklappt - die Devices tauchen auf, wie geplant. Vielen Dank!
Nun muss ich noch rausfinden, wie ich das Script in Rhytmus von x Sekunden laufen lasse, dann ist ales prima.
Allerdings hat das beim ersten Lauf ne Menge Logeinträge rausgeworfen:
! 16:14:12.629
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.631
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.631
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.631
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.633
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.634
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.634
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.636
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.636
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.636
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.638
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.639
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.639
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.641
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.641
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.641
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.643
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.643
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.643
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.645
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.645
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.645
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.648
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.648
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.648
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.650
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.650
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.650
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.652
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.652
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.652
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.654
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.655
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.655
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.657
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.657
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.657
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.659
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.659
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.659
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.661
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.662
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.662
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.663
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.664
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.664
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.665
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.665
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.666
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.669
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.669
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.670
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.671
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.671
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.672
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.673
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.673
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.673
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.676
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.676
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.676
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.679
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.679
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.679
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.681
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.681
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.681
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.683
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.684
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.684
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.686
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.686
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.686
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.689
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.689
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.689
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.691
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.691
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.691
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.694
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.695
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.695
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.696
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.696
! [info]
! javascript.0 script.js.22: {"status": "ok", "version": "3.38", "request": {"route": "/swlist.json" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"off","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"on","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"},{"id":8,"name":"Lampe Steffi","type":"hue","status":"off","hue_id":0,"light_id":13,"color":{"hue":4,"sat":0,"bri":57},"favorite":"no"},{"id":9,"name":"Hue iris schwar","type":"hue","status":"off","hue_id":0,"light_id":7,"color":{"hue":0,"sat":81,"bri":52},"favorite":"no"},{"id":10,"name":"Hue iris clear","type":"hue","status":"off","hue_id":0,"light_id":5,"color":{"hue":5,"sat":0,"bri":0},"favorite":"no"},{"id":11,"name":"Hue lightstrip ","type":"hue","status":"off","hue_id":0,"light_id":6,"color":{"hue":0,"sat":0,"bri":50},"favorite":"no"},{"id":12,"name":"Wohnzimmertisch","type":"dimmer","status":"off","hue_id":0,"light_id":2,"dimlevel":42,"favorite":"no"},{"id":13,"name":"Flur","type":"switch","status":"off","favorite":"no"},{"id":14,"name":"Badezimmer","type":"switch","status":"off","favorite":"no"},{"id":15,"name":"Kueche","type":"switch","status":"off","favorite":"no"},{"id":16,"name":"Lichtbox","type":"hue","status":"off","hue_id":0,"light_id":10,"color":{"hue":244,"sat":99,"bri":95},"favorite":"no"},{"id":17,"name":"Stern","type":"switch","status":"off","favorite":"no"},{"id":19,"name":"Bs","type":"switch","status":"off","favorite":"no"},{"id":20,"name":"Bs","type":"switch","status":"off","favorite":"no"}]}Dann bekomme ich bei jedem Lauf (manuell gestartet) einen Error - was der zu bedeuten hat, erschließt sich mir aber nicht.
! 16:16:18.032
! [info]
! javascript.0 Stop script script.js.22
! 16:16:18.548
! [info]
! javascript.0 Start javascript script.js.22
! 16:16:18.549
! [info]
! javascript.0 script.js.22: registered 0 subscriptions and 0 schedules
! 16:16:19.120
! [error]
! javascript.0 script.js.22: null
! 16:16:19.121
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.121
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.122
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.122
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.122
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.122
! [info]
! javascript.0 script.js.22: {"status": "ok", "version": "3.38", "request": {"route": "/swlist.json" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"on","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"on","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"},{"id":8,"name":"Lampe Steffi","type":"hue","status":"off","hue_id":0,"light_id":13,"color":{"hue":4,"sat":0,"bri":57},"favorite":"no"},{"id":9,"name":"Hue iris schwar","type":"hue","status":"off","hue_id":0,"light_id":7,"color":{"hue":0,"sat":81,"bri":52},"favorite":"no"},{"id":10,"name":"Hue iris clear","type":"hue","status":"off","hue_id":0,"light_id":5,"color":{"hue":5,"sat":0,"bri":0},"favorite":"no"},{"id":11,"name":"Hue lightstrip ","type":"hue","status":"off","hue_id":0,"light_id":6,"color":{"hue":0,"sat":0,"bri":50},"favorite":"no"},{"id":12,"name":"Wohnzimmertisch","type":"dimmer","status":"off","hue_id":0,"light_id":2,"dimlevel":42,"favorite":"no"},{"id":13,"name":"Flur","type":"switch","status":"off","favorite":"no"},{"id":14,"name":"Badezimmer","type":"switch","status":"off","favorite":"no"},{"id":15,"name":"Kueche","type":"switch","status":"off","favorite":"no"},{"id":16,"name":"Lichtbox","type":"hue","status":"off","hue_id":0,"light_id":10,"color":{"hue":244,"sat":99,"bri":95},"favorite":"no"},{"id":17,"name":"Stern","type":"switch","status":"off","favorite":"no"},{"id":19,"name":"Bs","type":"switch","status":"off","favorite":"no"},{"[/spoiler]LG
Markus / Sirius77
-
Das Skript funktioniert prinzipiell, ist allerding "quick and dirty". Vorschlag:
! ```
const request = require('request'); ! const options = { url: 'http://192.168.1.xx/xxxx/swlist.json' }; ! const path = 'javascript.' + instance + '.HomeWizard.'; ! function setStates(dps) { var nameDev, idDev, status; for(var i =0; i < dps.length; i++) { nameDev = dps[i].name; idDev = nameDev.replace(/\s+/g, '_'); status = true; if(dps[i].status === 'off') status = false; setState(path + idDev + '.status', status); if(dps[i].type === 'dimmer') setState(path + idDev + '.dimlevel', dps[i].dimlevel); if(dps[i].type === 'hue') { setState(path + idDev + '.color.hue', dps[i].color.hue); setState(path + idDev + '.color.sat', dps[i].color.sat); setState(path + idDev + '.color.bri', dps[i].color.bri); } } } ! function getHomeWizard() { request(options,function (error, response, body){ if (error) log('Fehler beim einlesen: ' + error, 'error'); else setStates(JSON.parse(body).response); }); } ! schedule('*/10 * * * * *', getHomeWizard); // alle 10 s ! // Der nachfolgende Teil wird nur einmal bei Skriptstart ausgeführt function CreateDevices(dps){ var nameDev, idDev, status; for(var i =0; i < dps.length; i++) { nameDev = dps[i].name; idDev = nameDev.replace(/\s+/g, '_'); if(getObject(path + idDev + '.status')) return; status = true; if(dps[i].status === 'off') status = false; createState(path + idDev + '.status', status, { name: nameDev + '.status', type: 'boolean', role: 'switch', read: true, write: false, states: { false: 'off', true: 'on' } }); if(dps[i].type === 'dimmer') createState(path + idDev + '.dimlevel', dps[i].dimlevel, { name: nameDev + '.dimlevel', type: 'number', role: 'level', read: true, write: false, min: 0, max: 100, unit: '%' }); if(dps[i].type === 'hue') { createState(path + idDev + '.color.hue', dps[i].color.hue, { name: nameDev + '.color.hue', type: 'number', role: 'level', read: true, write: false, min: 0, max: 255 }); createState(path + idDev + '.color.sat', dps[i].color.sat, { name: nameDev + '.color.sat', type: 'number', role: 'level', read: true, write: false, min: 0, max: 255 }); createState(path + idDev + '.color.bri', dps[i].color.bri, { name: nameDev + '.color.bri', type: 'number', role: 'level', read: true, write: false, min: 0, max: 255 }); } } } ! request(options,function (error, response, body){ if (error) log('Fehler beim einlesen: ' + error, 'error'); else CreateDevices(JSON.parse(body).response); });
Die Datenpunkte sehen dann so aus:
! EDIT: Habe noch common.role ergänzt.[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i] -
Auch hier vielen Dank!
Leider bekomme ich den Einlesefehler.
URL ist definitv korrekt - aber iegendwie mag es nicht laufen
Ich hab aber auch keine Idee, wie ich rausfinden kann, woran es hakt…
LOG:
! 23:38:31.715
! [info]
! javascript.0 Start javascript script.js.23
! 23:38:31.720
! [info]
! javascript.0 script.js.23: registered 0 subscriptions and 1 schedule
! 23:38:32.171
! [error]
! javascript.0 script.js.23: Fehler beim einlesen: null
! 23:38:41.158
! [error]
! javascript.0 script.js.23: Fehler beim einlesen: null
! 23:38:51.170
! [error]
! javascript.0 script.js.23: Fehler beim einlesen: nullDas Skript funktioniert prinzipiell, ist allerding "quick and dirty". Vorschlag:
!
`const request = require('request'); ! const options = { url: 'http://192.168.1.xx/xxxx/swlist.json' }; ! const path = 'javascript.' + instance + '.HomeWizard.'; ! function setStates(dps) { var nameDev, idDev, status; for(var i =0; i < dps.length; i++) { nameDev = dps[i].name; idDev = nameDev.replace(/\s+/g, '_'); status = true; if(dps[i].status === 'off') status = false; setState(path + idDev + '.status', status); if(dps[i].type === 'dimmer') setState(path + idDev + '.dimlevel', dps[i].dimlevel); if(dps[i].type === 'hue') { setState(path + idDev + '.color.hue', dps[i].color.hue); setState(path + idDev + '.color.sat', dps[i].color.sat); setState(path + idDev + '.color.bri', dps[i].color.bri); } } } ! function getHomeWizard() { request(options,function (error, response, body){ if (!error) log('Fehler beim einlesen: ' + error, 'error'); else setStates(JSON.parse(body).response); }); } ! function CreateDevices(dps){ var nameDev, idDev, status; for(var i =0; i < dps.length; i++) { nameDev = dps[i].name; idDev = nameDev.replace(/\s+/g, '_'); if(getState(path + idDev + '.status')) return; status = true; if(dps[i].status === 'off') status = false; createState(path + idDev + '.status', status, { name: nameDev + '.status', type: 'boolean', role: 'switch', read: true, write: false, states: { false: 'off', true: 'on' } }); if(dps[i].type === 'dimmer') createState(path + idDev + '.dimlevel', dps[i].dimlevel, { name: nameDev + '.dimlevel', type: 'number', role: 'level', read: true, write: false, min: 0, max: 100, unit: '%' }); if(dps[i].type === 'hue') { createState(path + idDev + '.color.hue', dps[i].color.hue, { name: nameDev + '.color.hue', type: 'number', role: 'level', read: true, write: false, min: 0, max: 255 }); createState(path + idDev + '.color.sat', dps[i].color.sat, { name: nameDev + '.color.sat', type: 'number', role: 'level', read: true, write: false, min: 0, max: 255 }); createState(path + idDev + '.color.bri', dps[i].color.bri, { name: nameDev + '.color.bri', type: 'number', role: 'level', read: true, write: false, min: 0, max: 255 }); } } } ! request(options,function (error, response, body){ if (!error) log('Fehler beim einlesen: ' + error, 'error'); else CreateDevices(JSON.parse(body).response); }); ! schedule('*/10 * * * * *', getHomeWizard); // alle 10 s` Die Datenpunkte sehen dann so aus: ! HomeWizard.JPG ! EDIT: Habe noch common.role ergänzt.[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i]
` -
Weiteres Update:
Ich vermute mal, die regelmäßige Ausführung des Scriptes (Version Lucky) erreiche ich mit de, Befehl schedule('*/10 * * * * *', function); // alle 10 s
Wenn ich als function createDevices setze (wär für mich das logischste) erhalte ich die Logeinträge:
! javascript.0
! 2017-10-30 00:36:50.198
! error
! Error in callback: TypeError: Cannot read property 'response' of undefined
! javascript.0
! 2017-10-30 00:36:40.198
! error
! at Object.CreateDevices (script.js.22:26:25)
! javascript.0
! 2017-10-30 00:36:40.197
! error
! Error in callback: TypeError: Cannot read property 'response' of undefined
! javascript.0
! 2017-10-30 00:36:30.195
! error
! at Object.CreateDevices (script.js.22:26:25)
! javascript.0
! 2017-10-30 00:36:30.194
! error
! Error in callback: TypeError: Cannot read property 'response' of undefined
! javascript.0
! 2017-10-30 00:36:20.197
! error
! at Object.CreateDevices (script.js.22:26:25)
! javascript.0
! 2017-10-30 00:36:20.196
! error
! Error in callback: TypeError: Cannot read property 'response' of undefined
! javascript.0
! 2017-10-30 00:36:10.197
! error
! at Object.CreateDevices (script.js.22:26:25)
! javascript.0
! 2017-10-30 00:36:10.196
! error
! Error in callback: TypeError: Cannot read property 'response' of undefined
! javascript.0
! 2017-10-30 00:36:00.197
! error
! at Object.CreateDevices (script.js.22:26:25)
! javascript.0
! 2017-10-30 00:36:00.196
! error
! Error in callback: TypeError: Cannot read property 'response' of undefined
! javascript.0
! 2017-10-30 00:35:50.199
! error
! at Object.CreateDevices (script.js.22:26:25)
! javascript.0
! 2017-10-30 00:35:50.198
! error
! Error in callback: TypeError: Cannot read property 'response' of undefinedWenn ich den Schedule mit der function CreateState bestücke, stürzt der Javascript mit ner Reihe von Errors ab.
Hier die Logdaten:
! host.glancr
! 2017-10-30 00:37:40.474
! error
! instance system.adapter.javascript.0 terminated with code 0 (OK)
! host.glancr
! 2017-10-30 00:37:40.474
! error
! Caught by controller[0]: at TCP.onread (net.js:547:20)
! host.glancr
! 2017-10-30 00:37:40.473
! error
! Caught by controller[0]: at Socket.Readable.push (_stream_readable.js:134:10)
! host.glancr
! 2017-10-30 00:37:40.473
! error
! Caught by controller[0]: at readableAddChunk (_stream_readable.js:176:18)
! host.glancr
! 2017-10-30 00:37:40.473
! error
! Caught by controller[0]: at Socket.emit (events.js:188:7)
! host.glancr
! 2017-10-30 00:37:40.473
! error
! Caught by controller[0]: at emitOne (events.js:96:13)
! host.glancr
! 2017-10-30 00:37:40.472
! error
! Caught by controller[0]: at Socket.realHandler (/opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/WebSocket.js:825:20)
! host.glancr
! 2017-10-30 00:37:40.472
! error
! Caught by controller[0]: at Receiver.add (/opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:103:24)
! host.glancr
! 2017-10-30 00:37:40.472
! error
! Caught by controller[0]: at Receiver.expectHandler (/opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:499:31)
! host.glancr
! 2017-10-30 00:37:40.471
! error
! Caught by controller[0]: at Receiver.finish (/opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:541:12)
! host.glancr
! 2017-10-30 00:37:40.471
! error
! Caught by controller[0]: at Receiver.flush (/opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:347:3)
! host.glancr
! 2017-10-30 00:37:40.471
! error
! Caught by controller[0]: at /opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:508:14
! host.glancr
! 2017-10-30 00:37:40.471
! error
! Caught by controller[0]: at Receiver.applyExtensions (/opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:371:5)
! host.glancr
! 2017-10-30 00:37:40.470
! error
! Caught by controller[0]: at /opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/Receiver.js:536:18
! host.glancr
! 2017-10-30 00:37:40.470
! error
! Caught by controller[0]: at Receiver.ontext (/opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/WebSocket.js:841:10)
! host.glancr
! 2017-10-30 00:37:40.470
! error
! Caught by controller[0]: at WebSocket.emit (events.js:191:7)
! host.glancr
! 2017-10-30 00:37:40.469
! error
! Caught by controller[0]: at emitTwo (events.js:106:13)
! host.glancr
! 2017-10-30 00:37:40.469
! error
! Caught by controller[0]: at WebSocket.onMessage (/opt/iobroker/node_modules/engine.io-client/node_modules/ws/lib/WebSocket.js:442:14)
! host.glancr
! 2017-10-30 00:37:40.469
! error
! Caught by controller[0]: at WebSocket.ws.onmessage (/opt/iobroker/node_modules/engine.io-client/lib/transports/websocket.js:146:10)
! host.glancr
! 2017-10-30 00:37:40.468
! error
! Caught by controller[0]: at WS.Transport.onData (/opt/iobroker/node_modules/engine.io-client/lib/transport.js:137:8)
! host.glancr
! 2017-10-30 00:37:40.468
! error
! Caught by controller[0]: at WS.Transport.onPacket (/opt/iobroker/node_modules/engine.io-client/lib/transport.js:145:8)
! host.glancr
! 2017-10-30 00:37:40.468
! error
! Caught by controller[0]: at WS.Emitter.emit (/opt/iobroker/node_modules/engine.io-client/node_modules/component-emitter/index.js:133:20)
! host.glancr
! 2017-10-30 00:37:40.467
! error
! Caught by controller[0]: at WS. (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:268:10)
! host.glancr
! 2017-10-30 00:37:40.467
! error
! Caught by controller[0]: at Socket.onPacket (/opt/iobroker/node_modules/engine.io-client/lib/socket.js:451:14)
! host.glancr
! 2017-10-30 00:37:40.467
! error
! Caught by controller[0]: at Socket.Emitter.emit (/opt/iobroker/node_modules/engine.io-client/node_modules/component-emitter/index.js:133:20)
! host.glancr
! 2017-10-30 00:37:40.466
! error
! Caught by controller[0]: at Socket. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
! host.glancr
! 2017-10-30 00:37:40.466
! error
! Caught by controller[0]: at Manager.ondata (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:322:16)
! host.glancr
! 2017-10-30 00:37:40.466
! error
! Caught by controller[0]: at Decoder.add (/opt/iobroker/node_modules/socket.io-parser/index.js:246:12)
! host.glancr
! 2017-10-30 00:37:40.465
! error
! Caught by controller[0]: at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:134:20)
! host.glancr
! 2017-10-30 00:37:40.465
! error
! Caught by controller[0]: at Decoder. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
! host.glancr
! 2017-10-30 00:37:40.465
! error
! Caught by controller[0]: at Manager.ondecoded (/opt/iobroker/node_modules/socket.io-client/lib/manager.js:332:8)
! host.glancr
! 2017-10-30 00:37:40.464
! error
! Caught by controller[0]: at Manager.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
! host.glancr
! 2017-10-30 00:37:40.464
! error
! Caught by controller[0]: at Manager. (/opt/iobroker/node_modules/component-bind/index.js:21:15)
! host.glancr
! 2017-10-30 00:37:40.464
! error
! Caught by controller[0]: at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:236:12)
! host.glancr
! 2017-10-30 00:37:40.463
! error
! Caught by controller[0]: at Socket.onack (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:312:9)
! host.glancr
! 2017-10-30 00:37:40.462
! error
! Caught by controller[0]: at Socket. (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:2185:37)
! host.glancr
! 2017-10-30 00:37:40.460
! error
! Caught by controller[0]: TypeError: Cannot read property 'match' of undefined
! javascript.0
! 2017-10-30 00:37:40.309
! error
! TypeError: Cannot read property 'match' of undefined at Socket. (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:2185:37) at Socket.onack (/opt/iobroker/node_modules/so
! javascript.0
! 2017-10-30 00:37:40.309
! error
! uncaught exception: Cannot read property 'match' of undefinedWo ist mein Denkfehler?
Und hier das Update:
Super!
Es hat geklappt - die Devices tauchen auf, wie geplant. Vielen Dank!
Nun muss ich noch rausfinden, wie ich das Script in Rhytmus von x Sekunden laufen lasse, dann ist ales prima.
Allerdings hat das beim ersten Lauf ne Menge Logeinträge rausgeworfen:
! 16:14:12.629
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.631
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.631
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.631
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.633
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.634
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.634
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.636
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.636
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.636
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.638
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.639
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.639
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.641
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.641
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.641
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.643
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.643
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.643
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.645
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.645
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.645
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.648
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.648
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.648
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.650
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.650
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.650
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.652
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.652
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.652
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.654
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.655
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.655
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.657
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.657
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.657
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.659
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.659
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.659
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.661
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.662
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.662
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.663
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.664
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.664
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.665
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.665
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.666
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.669
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.669
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.670
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.671
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.671
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.672
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.673
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.673
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.673
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.676
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.676
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.676
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.679
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.679
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.679
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.681
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.681
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.681
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.683
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.684
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.684
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.686
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.686
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.686
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.689
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.689
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.689
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.691
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.691
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.691
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.694
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.695
! [warn]
! javascript.0 at CreateDevices (script.js.22:30:26)
! 16:14:12.695
! [warn]
! javascript.0 at Request._callback (script.js.22:12:9)
! 16:14:12.696
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:14:12.696
! [info]
! javascript.0 script.js.22: {"status": "ok", "version": "3.38", "request": {"route": "/swlist.json" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"off","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"on","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"},{"id":8,"name":"Lampe Steffi","type":"hue","status":"off","hue_id":0,"light_id":13,"color":{"hue":4,"sat":0,"bri":57},"favorite":"no"},{"id":9,"name":"Hue iris schwar","type":"hue","status":"off","hue_id":0,"light_id":7,"color":{"hue":0,"sat":81,"bri":52},"favorite":"no"},{"id":10,"name":"Hue iris clear","type":"hue","status":"off","hue_id":0,"light_id":5,"color":{"hue":5,"sat":0,"bri":0},"favorite":"no"},{"id":11,"name":"Hue lightstrip ","type":"hue","status":"off","hue_id":0,"light_id":6,"color":{"hue":0,"sat":0,"bri":50},"favorite":"no"},{"id":12,"name":"Wohnzimmertisch","type":"dimmer","status":"off","hue_id":0,"light_id":2,"dimlevel":42,"favorite":"no"},{"id":13,"name":"Flur","type":"switch","status":"off","favorite":"no"},{"id":14,"name":"Badezimmer","type":"switch","status":"off","favorite":"no"},{"id":15,"name":"Kueche","type":"switch","status":"off","favorite":"no"},{"id":16,"name":"Lichtbox","type":"hue","status":"off","hue_id":0,"light_id":10,"color":{"hue":244,"sat":99,"bri":95},"favorite":"no"},{"id":17,"name":"Stern","type":"switch","status":"off","favorite":"no"},{"id":19,"name":"Bs","type":"switch","status":"off","favorite":"no"},{"id":20,"name":"Bs","type":"switch","status":"off","favorite":"no"}]}Dann bekomme ich bei jedem Lauf (manuell gestartet) einen Error - was der zu bedeuten hat, erschließt sich mir aber nicht.
! 16:16:18.032
! [info]
! javascript.0 Stop script script.js.22
! 16:16:18.548
! [info]
! javascript.0 Start javascript script.js.22
! 16:16:18.549
! [info]
! javascript.0 script.js.22: registered 0 subscriptions and 0 schedules
! 16:16:19.120
! [error]
! javascript.0 script.js.22: null
! 16:16:19.121
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.121
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.122
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.122
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.122
! [info]
! javascript.0 script.js.22: ERSTELLT
! 16:16:19.122
! [info]
! javascript.0 script.js.22: {"status": "ok", "version": "3.38", "request": {"route": "/swlist.json" }, "response": [{"id":0,"name":"Halogen Decke","type":"switch","status":"on","favorite":"no"},{"id":1,"name":"Spot Markus","type":"switch","status":"on","favorite":"no"},{"id":2,"name":"Schreibtisch M","type":"switch","status":"off","favorite":"no"},{"id":3,"name":"Drucker","type":"switch","status":"off","favorite":"no"},{"id":4,"name":"Smartmirror","type":"switch","status":"off","favorite":"no"},{"id":5,"name":"Lampe vor TV","type":"switch","status":"off","favorite":"no"},{"id":6,"name":"Lichter Balkon","type":"switch","status":"off","favorite":"no"},{"id":7,"name":"Kugellampe","type":"switch","status":"off","favorite":"no"},{"id":8,"name":"Lampe Steffi","type":"hue","status":"off","hue_id":0,"light_id":13,"color":{"hue":4,"sat":0,"bri":57},"favorite":"no"},{"id":9,"name":"Hue iris schwar","type":"hue","status":"off","hue_id":0,"light_id":7,"color":{"hue":0,"sat":81,"bri":52},"favorite":"no"},{"id":10,"name":"Hue iris clear","type":"hue","status":"off","hue_id":0,"light_id":5,"color":{"hue":5,"sat":0,"bri":0},"favorite":"no"},{"id":11,"name":"Hue lightstrip ","type":"hue","status":"off","hue_id":0,"light_id":6,"color":{"hue":0,"sat":0,"bri":50},"favorite":"no"},{"id":12,"name":"Wohnzimmertisch","type":"dimmer","status":"off","hue_id":0,"light_id":2,"dimlevel":42,"favorite":"no"},{"id":13,"name":"Flur","type":"switch","status":"off","favorite":"no"},{"id":14,"name":"Badezimmer","type":"switch","status":"off","favorite":"no"},{"id":15,"name":"Kueche","type":"switch","status":"off","favorite":"no"},{"id":16,"name":"Lichtbox","type":"hue","status":"off","hue_id":0,"light_id":10,"color":{"hue":244,"sat":99,"bri":95},"favorite":"no"},{"id":17,"name":"Stern","type":"switch","status":"off","favorite":"no"},{"id":19,"name":"Bs","type":"switch","status":"off","favorite":"no"},{"[/spoiler]LG
Markus / Sirius77 `
-
Ich vermute mal, die regelmäßige Ausführung des Scriptes erreiche ich mit de, Befehl schedule('*/10 * * * * *', function); // alle 10 s `
Richtig.
@Sirius_77:[error]
javascript.0 script.js.23: Fehler beim einlesen: null `
Sorry, mein Fehler (kommt von copy & paste). Richtig (in Funktion getHomeWizard() und in request fast am Ende):if(error) log('Fehler beim einlesen: ' + error, 'error');
nicht if(!error) !
Wenn ich als function createDevices setze (wär für mich das logischste) `
createDevices() benötigt man nur einmal. In der Folge - nachdem die Datenpunkte erzeugt wurden - müssen nur noch die Datenpunkt-Zustände aktualisiert werden. Das macht die Funktion setStates(). -
Also der Einlesefehler ist weg
- das ! bei Errors war es.
Wenn ich das Script starte, erhalte ich eine ganze Reihe von 'Warnmeldungen' im Log - Devices tauchen unter 'Objekte' - Javascript.0.HomeWizard aber nicht auf
Script (Version Paul53)
! const request = require('request');
! const options = {
! url: 'http://192.168.1.xx/xxxxxx/swlist.json'
! };
! const path = 'javascript.' + instance + '.HomeWizard.';
! function setStates(dps) {
! var nameDev, idDev, status;
! for(var i =0; i < dps.length; i++) {
! nameDev = dps__.name;
! idDev = nameDev.replace(/\s+/g, '');
! status = true;
! if(dps__.status === 'off') status = false;
! setState(path + idDev + '.status', status);
! if(dps__.type === 'dimmer') setState(path + idDev + '.dimlevel', dps__.dimlevel);
! if(dps__.type === 'hue') {
! setState(path + idDev + '.color.hue', dps__.color.hue);
! setState(path + idDev + '.color.sat', dps__.color.sat);
! setState(path + idDev + '.color.bri', dps__.color.bri);
! }
! }
! }
! function getHomeWizard() {
! request(options,function (error, response, body){
! if (error) log('Fehler beim einlesen: ' + error, 'error');
! else setStates(JSON.parse(body).response);
! });
! }
! function CreateDevices(dps){
! var nameDev, idDev, status;
! for(var i =0; i < dps.length; i++) {
! nameDev = dps__.name;
! idDev = nameDev.replace(/\s+/g, '');
! if(getState(path + idDev + '.status')) return;
! status = true;
! if(dps__.status === 'off') status = false;
! createState(path + idDev + '.status', status, {
! name: nameDev + '.status',
! type: 'boolean',
! role: 'switch',
! read: true,
! write: false,
! states: {
! false: 'off',
! true: 'on'
! }
! });
! if(dps_.type === 'dimmer') createState(path + idDev + '.dimlevel', dps_.dimlevel, {
! name: nameDev + '.dimlevel',
! type: 'number',
! role: 'level',
! read: true,
! write: false,
! min: 0,
! max: 100,
! unit: '%'
! });
! if(dps_.type === 'hue') {
! createState(path + idDev + '.color.hue', dps_.color.hue, {
! name: nameDev + '.color.hue',
! type: 'number',
! role: 'level',
! read: true,
! write: false,
! min: 0,
! max: 255
! });
! createState(path + idDev + '.color.sat', dps_.color.sat, {
! name: nameDev + '.color.sat',
! type: 'number',
! role: 'level',
! read: true,
! write: false,
! min: 0,
! max: 255
! });
! createState(path + idDev + '.color.bri', dps_.color.bri, {
! name: nameDev + '.color.bri',
! type: 'number',
! role: 'level',
! read: true,
! write: false,
! min: 0,
! max: 255
! });
! }
! }
! }
! request(options,function (error, response, body){
! if (error) log('Fehler beim einlesen: ' + error, 'error');
! else CreateDevices(JSON.parse(body).response);
! });
! schedule('*/10 * * * * *', getHomeWizard); // alle 10 s__________________________ ___Log (Auszug)! __________javascript.0
! 2017-10-30 01:40:07.282
! info
! Stop script script.js.23
! javascript.0
! 2017-10-30 01:40:01.151
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.151
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.151
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.151
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.150
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.150
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.150
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.150
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.150
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.149
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.149
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.149
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.149
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.148
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.148
! warn
! at setStates (script.js.23:16:9)
! javascript.0
! 2017-10-30 01:40:01.146
! warn
! State "javascript.0.HomeWizard.Bs.status" not found
! javascript.0
! 2017-10-30 01:40:01.146
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.146
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.146
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.145
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.145
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.145
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.145
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.144
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.144
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.144
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.144
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.143
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.143
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.143
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.142
! warn
! at setStates (script.js.23:16:9)
! javascript.0
! 2017-10-30 01:40:01.140
! warn
! State "javascript.0.HomeWizard.Bs.status" not found
! javascript.0
! 2017-10-30 01:40:01.140
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.140
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.139
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.139
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.139
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.139
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.139
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.138
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.138
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.138
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.138
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.138
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.137
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.137
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.135
! warn
! at setStates (script.js.23:16:9)
! javascript.0
! 2017-10-30 01:40:01.133
! warn
! State "javascript.0.HomeWizard.Stern.status" not found
! javascript.0
! 2017-10-30 01:40:01.133
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.133
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.132
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.132
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.131
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.131
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.127
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.126
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.126
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.126
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.125
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.125
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.125
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.124
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.124
! warn
! at setStates (script.js.23:21:13)
! javascript.0
! 2017-10-30 01:40:01.122
! warn
! State "javascript.0.HomeWizard.Lichtbox.color.bri" not found
! javascript.0
! 2017-10-30 01:40:01.122
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.122
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.122
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.121
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.121
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.121
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.121
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.121
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.120
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.120
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.120
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.120
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.119
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.119
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.119
! warn
! at setStates (script.js.23:20:13)
! javascript.0
! 2017-10-30 01:40:01.117
! warn
! State "javascript.0.HomeWizard.Lichtbox.color.sat" not found
! javascript.0
! 2017-10-30 01:40:01.117
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.117
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.116
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.116
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.116
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.115
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.115
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.115
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.115
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.115
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.114
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.114
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.114
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.114
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.113
! warn
! at setStates (script.js.23:19:13)
! javascript.0
! 2017-10-30 01:40:01.110
! warn
! State "javascript.0.HomeWizard.Lichtbox.color.hue" not found
! javascript.0
! 2017-10-30 01:40:01.110
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.110
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.109
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.108
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.108
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.107
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.107
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.107
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.106
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.106
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.106
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.106
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.105
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.105
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.104
! warn
! at setStates (script.js.23:16:9)
! javascript.0
! 2017-10-30 01:40:01.103
! warn
! State "javascript.0.HomeWizard.Lichtbox.status" not found
! javascript.0
! 2017-10-30 01:40:01.102
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.102
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.102
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.102
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.101
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.101
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.101
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.101
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.101
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.100
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.100
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.100
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.099
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.099
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.098
! warn
! at setStates (script.js.23:16:9)
! javascript.0
! 2017-10-30 01:40:01.097
! warn
! State "javascript.0.HomeWizard.Kueche.status" not found
! javascript.0
! 2017-10-30 01:40:01.097
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.096
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.096
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.096
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.095
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.095
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.095
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.095
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.094
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.094
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.094
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.094
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.094
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.093
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.093
! warn
! at setStates (script.js.23:16:9)
! javascript.0
! 2017-10-30 01:40:01.084
! warn
! State "javascript.0.HomeWizard.Badezimmer.status" not found
! javascript.0
! 2017-10-30 01:40:01.083
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.083
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.083
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.083
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.083
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.082
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.082
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.082
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.082
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.081
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.081
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.081
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.080
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.080
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.079
! warn
! at setStates (script.js.23:16:9)
! javascript.0
! 2017-10-30 01:40:01.078
! warn
! State "javascript.0.HomeWizard.Flur.status" not found
! javascript.0
! 2017-10-30 01:40:01.077
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.077
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.077
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.076
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.076
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.075
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.075
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.075
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.074
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.074
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.074
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.073
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.073
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.073
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.072
! warn
! at setStates (script.js.23:17:38)
! javascript.0
! 2017-10-30 01:40:01.071
! warn
! State "javascript.0.HomeWizard.Wohnzimmertisch.dimlevel" not found
! javascript.0
! 2017-10-30 01:40:01.071
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.070
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.070
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.068
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.068
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.068
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.067
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.067
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.066
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.066
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.065
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.065
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.064
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.064
! warn
! at Request._callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.063
! warn
! at setStates (script.js.23:16:9)
! javascript.0
! 2017-10-30 01:40:01.062
! warn
! State "javascript.0.HomeWizard.Wohnzimmertisch.status" not found
! javascript.0
! 2017-10-30 01:40:01.062
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.062
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.061
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.061
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.061
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.060
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.060
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.060
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.060
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.059
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.059
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.059
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.058
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.058
! warn
! at Request.callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.058
! warn
! at setStates (script.js.23:21:13)
! javascript.0
! 2017-10-30 01:40:01.056
! warn
! State "javascript.0.HomeWizard.Hue_lightstrip.color.bri" not found
! javascript.0
! 2017-10-30 01:40:01.055
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.055
! warn
! at _combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.054
! warn
! at endReadableNT (_stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.054
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.054
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.053
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.053
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.052
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.052
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.052
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.052
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.051
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.051
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.051
! warn
! at Request.callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.050
! warn
! at setStates (script.js.23:20:13)
! javascript.0
! 2017-10-30 01:40:01.049
! warn
! State "javascript.0.HomeWizard.Hue_lightstrip.color.sat" not found
! javascript.0
! 2017-10-30 01:40:01.048
! warn
! at process._tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.047
! warn
! at combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.047
! warn
! at endReadableNT (stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.046
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.046
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.045
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.045
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.045
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.044
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.044
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.043
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.043
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.042
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.041
! warn
! at Request.callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.041
! warn
! at setStates (script.js.23:19:13)
! javascript.0
! 2017-10-30 01:40:01.039
! warn
! State "javascript.0.HomeWizard.Hue_lightstrip.color.hue" not found
! javascript.0
! 2017-10-30 01:40:01.039
! warn
! at process.tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.038
! warn
! at combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.038
! warn
! at endReadableNT (stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.038
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.037
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.037
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.037
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.037
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.036
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.035
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.034
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.034
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.033
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.025
! warn
! at Request.callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.024
! warn
! at setStates (script.js.23:16:9)
! javascript.0
! 2017-10-30 01:40:01.022
! warn
! State "javascript.0.HomeWizard.Hue_lightstrip.status" not found
! javascript.0
! 2017-10-30 01:40:01.021
! warn
! at process.tickCallback (internal/process/next_tick.js:104:9)
! javascript.0
! 2017-10-30 01:40:01.020
! warn
! at combinedTickCallback (internal/process/next_tick.js:80:11)
! javascript.0
! 2017-10-30 01:40:01.019
! warn
! at endReadableNT (stream_readable.js:974:12)
! javascript.0
! 2017-10-30 01:40:01.019
! warn
! at IncomingMessage.emit (events.js:185:7)
! javascript.0
! 2017-10-30 01:40:01.018
! warn
! at emitNone (events.js:91:20)
! javascript.0
! 2017-10-30 01:40:01.018
! warn
! at IncomingMessage.g (events.js:292:16)
! javascript.0
! 2017-10-30 01:40:01.018
! warn
! at IncomingMessage. (/opt/iobroker/node_modules/request/request.js:1085:12)
! javascript.0
! 2017-10-30 01:40:01.017
! warn
! at Request.emit (events.js:188:7)
! javascript.0
! 2017-10-30 01:40:01.017
! warn
! at emitOne (events.js:96:13)
! javascript.0
! 2017-10-30 01:40:01.016
! warn
! at Request. (/opt/iobroker/node_modules/request/request.js:1163:10)
! javascript.0
! 2017-10-30 01:40:01.015
! warn
! at Request.emit (events.js:191:7)
! javascript.0
! 2017-10-30 01:40:01.015
! warn
! at emitTwo (events.js:106:13)
! javascript.0
! 2017-10-30 01:40:01.014
! warn
! at Request.self.callback (/opt/iobroker/node_modules/request/request.js:186:22)
! javascript.0
! 2017-10-30 01:40:01.014
! warn
! at Request.callback (script.js.23:29:14)
! javascript.0
! 2017-10-30 01:40:01.014
! warn
! at setStates (script.js.23:21:13)
! javascript.0
! 2017-10-30 01:40:01.012
! warn
! State "javascript.0.HomeWizard.Hue_iris_clear.color.bri" not found
! javascript.0
! 2017-10-30 01:40:01.011
! warn
! at process.tickCallback (internal/process/next_tick.js:104:9)
! …. __________Fazit: Das Script Version @Paul53 läuft, legt aber keine Devices an.Das Script Version @Lucky läuft, legt Devices an, führt aber dazu, dass wenn ich versuche, das mit Schedule regelmäßig auszuführen, der Javascript-Adapter abstürzt
Nun gehe ich ratlos ins Bett.
LG und Gn8
Markus / Sirius77__________
Ich vermute mal, die regelmäßige Ausführung des Scriptes erreiche ich mit de, Befehl schedule('*/10 * * * * *', function); // alle 10 s ` Richtig.
@Sirius_77:__________[error]
javascript.0 script.js.23: Fehler beim einlesen: null__________ ` Sorry, mein Fehler (kommt von copy & paste). Richtig (in Funktion getHomeWizard() und in request fast am Ende):
if(error) log('Fehler beim einlesen: ' + error, 'error');
nicht if(!error) !
Wenn ich als function createDevices setze (wär für mich das logischste)
createDevices() benötigt man nur einmal. In der Folge - nachdem die Datenpunkte erzeugt wurden - müssen nur noch die Datenpunkt-Zustände aktualisiert werden. Das macht die Funktion setStates().
___ -
erhalte ich eine ganze Reihe von 'Warnmeldungen' im Log - Devices tauchen unter 'Objekte' - Javascript.0.HomeWizard aber nicht auf `
Die Warnmeldungen sind die Folge der fehlenden Datenpunkte.Vermutlich ist eine Abfrage auf existierenden Datenpunkt nicht korrekt, deshalb kommentiere bitte die Zeile aus:
// if(getState(path + idDev + '.status')) return;
Um zu sehen, ob das Erzeugen von Datenpunkten Fehler-Logs erzeugt, kommentiere auch erst mal das schedule() aus:
// schedule('*/10 * * * * *', getHomeWizard); // alle 10 s
Wenn die Datenpunkte erzeugt wurden, muss schedule() wieder aktiviert werden.
-
Sirius_77, poste bitte mal dein ganzes Skript mit meinem Code teil…
das beim ersten erstellen der States einen Warnmeldung kommt ist "normal" da die Überprüfung ob der State existiert zu dieser Meldung führt, kann man aber auch unterdrücken..
-
Die Überprüfung auf Existenz eines Datenpunktes funktioniert mit getObject() anstelle von getState():
if(getObject(path + idDev + '.status')) return;
Habe es im Original-Skript korrigiert.
-
Die Überprüfung auf Existenz eines Datenpunktes funktioniert mit getObject() anstelle von getState():
if(getObject(path + idDev + '.status')) return;
Habe es im Original-Skript korrigiert. `
stimmt
dann führt es auch nicht zu einer Warnung
habe das bei mir auch geändert und einen Intervall eingefügt
`var request = require('request'); Intervall = setInterval(SendRequest,1000); function SendRequest(){ var options = { url: 'http://192.168.1.xx/xxxx/swlist.json' }; request(options,function (error, response, body){ if (!error){ CreateDevices(JSON.parse(body)); console.log(body); } else{ console.error(error);} }); }//End of Function SendRequest function CreateDevices(data){ if ("undefined" !== typeof data.response){ var Group_by='name'; for (i = 0; i < data.response.length; i++) { for (var ObjName in data.response[i]) { if (!getObject('javascript.0.tests.Devices.'+data.response[i][Group_by].toString().replace(/\s+/g, '_')+'.'+ObjName)){ createState('javascript.0.tests.Devices.'+data.response[i][Group_by].toString().replace(/\s+/g, '_')+'.'+ObjName,data.response[i][ObjName],{type: typeof data.response[i][ObjName], role: ObjName}); console.log('ERSTELLT'); } else{setState('javascript.0.tests.Devices.'+data.response[i][Group_by].toString().replace(/\s+/g, '_')+'.'+ObjName,data.response[i][ObjName],akt=true)} } } } else{console.warn('Response in JSON nicht gefunden ! ')} }//End of Function CreateDevices` [/i][/i][/i][/i][/i][/i][/i]