Hallo Zusammen
ich versuch derzeite meine HomePilot an openHab anzubinden. Dazu nutze ich das HTTP-Bindung und interpretiere dann die gesendeten JSON-Daten.
Meine Rolläden habe ich damit schon gut im Griff. Jetzt möchte ich die Daten meines Rademacher-Umweltsensor auslesen und weiterverarbeiten. Mit dem Temperaturwert klappt das auch schon gut.
Leider kann ich das Objekt für die Windgeschwinigkeit nicht ansprechen, da als Schlüsselwort dazu "Windgeschw." vergeben ist. Probleme macht mir dabei der Punkt am Ende des Schlüsselwort.
So sieht der von der Homepilot gesendete Stream nach Eingabe von http://xxx.xxx.xxx.32/deviceajax.do?...10021&ik14bkqd aus:
Die Temperatur lese ich dann aus in dem ich folgende Item nutze:
Der Code in getWtTemp_Markise.js sieht wie folgt aus
Nun das Problem:
Die Temperatur konnte ich ja über das Schlüsselwort "Temperatur" in der getWtTemp_Markise.js abfragen.
Bei der Windgeschwindigkeit muss ich nun das Schlüsselwort "Windgeschw." verwenden.
Dabei macht mit der Punkt am Ende von "Windgeschwindig." probleme.
Der Aufruf in getWtWind_Markise.js sieht wie folgt aus
Doch das führt dazu, das der gesamt JSON-String zurückgegeben wird.
Ich habe nun einige Variation mit () oder "" ausprobiert, habe aber die Lösung nicht gefunden.
Hat einer eine Idee wie die richtige Syntax aussehen muss?
ich versuch derzeite meine HomePilot an openHab anzubinden. Dazu nutze ich das HTTP-Bindung und interpretiere dann die gesendeten JSON-Daten.
Meine Rolläden habe ich damit schon gut im Griff. Jetzt möchte ich die Daten meines Rademacher-Umweltsensor auslesen und weiterverarbeiten. Mit dem Temperaturwert klappt das auch schon gut.
Leider kann ich das Objekt für die Windgeschwinigkeit nicht ansprechen, da als Schlüsselwort dazu "Windgeschw." vergeben ist. Probleme macht mir dabei der Punkt am Ende des Schlüsselwort.
So sieht der von der Homepilot gesendete Stream nach Eingabe von http://xxx.xxx.xxx.32/deviceajax.do?...10021&ik14bkqd aus:
Code:
[SIZE=12px][FONT=arial]{[/FONT][/SIZE] [SIZE=12px][FONT=arial]"response": "get_meter_data",[/FONT][/SIZE] [SIZE=12px][FONT=arial]"status": "ok",[/FONT][/SIZE] [SIZE=12px][FONT=arial]"data": [/FONT][/SIZE] [SIZE=12px][FONT=arial][[/FONT][/SIZE] [SIZE=12px][FONT=arial]{ "Lichtwert": "1000 lx"},[/FONT][/SIZE] [SIZE=12px][FONT=arial]{"Windgeschw.": "5 m/s"},[/FONT][/SIZE] [SIZE=12px][FONT=arial]{"Temperatur": "6,0 °C"},[/FONT][/SIZE] [SIZE=12px][FONT=arial]{"Regen": "Erkannt"},[/FONT][/SIZE] [SIZE=12px][FONT=arial]{"Sonnenhöhe": "18°"},[/FONT][/SIZE] [SIZE=12px][FONT=arial]{"Sonnenrichtung": "Süden (201°)"},[/FONT][/SIZE] [SIZE=12px][FONT=arial]{"Aktualisiert": "30.01.16 – 14:16"}[/FONT][/SIZE] [SIZE=12px][FONT=arial]][/FONT][/SIZE] [SIZE=12px][FONT=arial]} [/FONT][/SIZE]
Code:
String StTemp_Markise "Wetterstation [%s]" <temperature> { http="<[http://192.168.178.32/deviceajax.do?meter=10021&ik14bkqd:15000:JS(getWtTemp_Markise.js)]" }
Code:
JSON.parse(input).data[0].Temperatur;
Die Temperatur konnte ich ja über das Schlüsselwort "Temperatur" in der getWtTemp_Markise.js abfragen.
Bei der Windgeschwindigkeit muss ich nun das Schlüsselwort "Windgeschw." verwenden.
Dabei macht mit der Punkt am Ende von "Windgeschwindig." probleme.
Der Aufruf in getWtWind_Markise.js sieht wie folgt aus
Code:
JSON.parse(input).data[0].Windgeschw.;
Ich habe nun einige Variation mit () oder "" ausprobiert, habe aber die Lösung nicht gefunden.
Hat einer eine Idee wie die richtige Syntax aussehen muss?
Kommentar