Hallo,
ich habe ein Gerät das ich über JSON ansprechen kann. Die zurückgelieferten Werte möchte ich in openHAB ausgeben. Wie ich in der openHAB Wiki gesehen habe, sollte das mit dem http-Binding möglich sein.
Auf folgender Seite wird das Thema JSON mit openHAB diskutiert.
https://groups.google.com/forum/#!ms...I/I_E03pMBpNIJ
Das Beispiel verstehe ich so:
Es wird von folgender JSON-Struktur ausgegangen:
Mit folgender Item-Definition wird der Titel zurückgegeben (vorausgesetzt die Datei getValue.js ist im Verzeichnis $OPENHAB_DIR/configuration/transform/ angelegt)
In der Datei getValue.js muss folgender Inhalt stehen um den Wert von value zu erhalten:
Wie müsste die Datei getValue.js aussehen wenn die Struktur wie folgt aufgebaut ist und der Wert employees[0].firstName ausgegeben werden soll?
Sieht dann die getvalue.js Datei wie folgt aus?
JSON.parse(input).employees[0].firstName;
Gruß
mepi0011
ich habe ein Gerät das ich über JSON ansprechen kann. Die zurückgelieferten Werte möchte ich in openHAB ausgeben. Wie ich in der openHAB Wiki gesehen habe, sollte das mit dem http-Binding möglich sein.
Auf folgender Seite wird das Thema JSON mit openHAB diskutiert.
https://groups.google.com/forum/#!ms...I/I_E03pMBpNIJ
Das Beispiel verstehe ich so:
Es wird von folgender JSON-Struktur ausgegangen:
Code:
{ "callsign": "KSBW", "date": "20131126", "duration": 3600, "isOffAir": false, "isPclocked": 3, "isPpv": false, "isRecording": false, "isVod": false, "major": 8, "minor": 65535, "offset": 3157, "programId": "11269591", "rating": "No Rating", "startTime": 1385485200, "stationId": 3910459, "status": { "code": 200, "commandResult": 0, "msg": "OK.", "query": "/tv/getTuned" }, "title": "Today" }
Code:
String DirecTV1_Channel "Current Channel" { http="<[[URL="http://10.90.30.100:8080/tv/getTuned:30000:REGEX%28/"]http://10.90.30.100:8080/tv/getTuned:30000:JS(getValue.js)][/URL]" }
JSON.parse(input).title;
Code:
"employees":[ {"firstName":"John", "lastName":"Doe"}, {"firstName":"Anna", "lastName":"Smith"}, {"firstName":"Peter", "lastName":"Jones"} ]
JSON.parse(input).employees[0].firstName;
Gruß
mepi0011
Kommentar