NEWS
Werte aus Wetterdaten selektieren
-
Hallo,
ich frage über HTTP Request die Daten meiner eigenen Wetterstation von Wunderground ab und erhalte z.b. folgende Werte, die ich in einem Datenpunkt unter "o_userdata" schreiben lasse:*{"observations":[{"stationID":"IHEI***12","obsTimeUtc":"2021-10-18T09:24:50Z","obsTimeLocal":"2021-10-18 11:24:50","neighborhood":"Rosental (10km southeast of Graz)","softwareType":"WH2602 V4.6.1","country":"AT","solarRadiation":116.8,"lon":17.551328,"realtimeFrequency":null,"epoch":1634549090,"lat":41.977921,"uv":4.0,"winddir":204,"humidity":80,"qcStatus":1,"metric":{"temp":12,"heatIndex":12,"dewpt":9,"windChill":12,"windSpeed":3,"windGust":8,"pressure":null,"precipRate":0.00,"precipTotal":0.00,"elev":415}}]}*Zur weiteren Verarbeitung möchte ich mittels Blockly z.B. die Werte für "temp", "solarRadiation" und "precipTotal" selektieren. Bei meinen rudimentären Kenntnisse ist es mir leider trotz intensiver Recherche nicht gelungen eine Lösung zu finden.
Ich wäre sehr dankbar, wenn mir jemand weiter helfen könnte.
LG Karl -
Hallo,
ich frage über HTTP Request die Daten meiner eigenen Wetterstation von Wunderground ab und erhalte z.b. folgende Werte, die ich in einem Datenpunkt unter "o_userdata" schreiben lasse:*{"observations":[{"stationID":"IHEI***12","obsTimeUtc":"2021-10-18T09:24:50Z","obsTimeLocal":"2021-10-18 11:24:50","neighborhood":"Rosental (10km southeast of Graz)","softwareType":"WH2602 V4.6.1","country":"AT","solarRadiation":116.8,"lon":17.551328,"realtimeFrequency":null,"epoch":1634549090,"lat":41.977921,"uv":4.0,"winddir":204,"humidity":80,"qcStatus":1,"metric":{"temp":12,"heatIndex":12,"dewpt":9,"windChill":12,"windSpeed":3,"windGust":8,"pressure":null,"precipRate":0.00,"precipTotal":0.00,"elev":415}}]}*Zur weiteren Verarbeitung möchte ich mittels Blockly z.B. die Werte für "temp", "solarRadiation" und "precipTotal" selektieren. Bei meinen rudimentären Kenntnisse ist es mir leider trotz intensiver Recherche nicht gelungen eine Lösung zu finden.
Ich wäre sehr dankbar, wenn mir jemand weiter helfen könnte.
LG Karl@chappo59 sagte in Werte aus Wetterdaten selektieren:
{"observations":[{"stationID":"IHEI*12","obsTimeUtc":"2021-10-18T09:24:50Z","obsTimeLocal":"2021-10-18 11:24:50","neighborhood":"Rosental (10km southeast of Graz)","softwareType":"WH2602 V4.6.1","country":"AT","solarRadiation":116.8,"lon":17.551328,"realtimeFrequency":null,"epoch":1634549090,"lat":41.977921,"uv":4.0,"winddir":204,"humidity":80,"qcStatus":1,"metric":{"temp":12,"heatIndex":12,"dewpt":9,"windChill":12,"windSpeed":3,"windGust":8,"pressure":null,"precipRate":0.00,"precipTotal":0.00,"elev":415}}]}
Bin kein Blockly Spezialist - aber Du wandelst ohne die Sternchen am Anfang und Ende - das ganze in ein Objekt um.
Das geht wahrscheinlich mit diesem Baustein - für näheres musst einen Blockly Spezi fragen - gibt aber wahrscheinlich genügend Beispiele:

Wenn Du so was ohne die Sternchen in einen JSON Formatter eingibst (https://jsonformatter.org/)
dann bekommst Du so was

Sobald Du den JSON mit dem Baustein in ein JS Objekt umgewandelt hast greifst Du also für Deine gewünschten Werte mittels:
observations[0}.metric.temp
observations[0].metric.precipTotal
oder
observations[0].solarRadiationzu
-
@chappo59 sagte in Werte aus Wetterdaten selektieren:
{"observations":[{"stationID":"IHEI*12","obsTimeUtc":"2021-10-18T09:24:50Z","obsTimeLocal":"2021-10-18 11:24:50","neighborhood":"Rosental (10km southeast of Graz)","softwareType":"WH2602 V4.6.1","country":"AT","solarRadiation":116.8,"lon":17.551328,"realtimeFrequency":null,"epoch":1634549090,"lat":41.977921,"uv":4.0,"winddir":204,"humidity":80,"qcStatus":1,"metric":{"temp":12,"heatIndex":12,"dewpt":9,"windChill":12,"windSpeed":3,"windGust":8,"pressure":null,"precipRate":0.00,"precipTotal":0.00,"elev":415}}]}
Bin kein Blockly Spezialist - aber Du wandelst ohne die Sternchen am Anfang und Ende - das ganze in ein Objekt um.
Das geht wahrscheinlich mit diesem Baustein - für näheres musst einen Blockly Spezi fragen - gibt aber wahrscheinlich genügend Beispiele:

Wenn Du so was ohne die Sternchen in einen JSON Formatter eingibst (https://jsonformatter.org/)
dann bekommst Du so was

Sobald Du den JSON mit dem Baustein in ein JS Objekt umgewandelt hast greifst Du also für Deine gewünschten Werte mittels:
observations[0}.metric.temp
observations[0].metric.precipTotal
oder
observations[0].solarRadiationzu
@mickym
Danke für die Antwort und das war sicherlich gut gemeint.
Ich hab jetzt viel Zeit investiert, aber wie schon oben erwähnt bei meinen rudimentären Kenntnisse hat mir das leider überhaupt nicht weiter geholfen.
Vielleicht gibt es jemanden, der mir diesbezüglich etwas tiefer unter die Arme greifen kann.
LG Karl -
Hallo,
ich frage über HTTP Request die Daten meiner eigenen Wetterstation von Wunderground ab und erhalte z.b. folgende Werte, die ich in einem Datenpunkt unter "o_userdata" schreiben lasse:*{"observations":[{"stationID":"IHEI***12","obsTimeUtc":"2021-10-18T09:24:50Z","obsTimeLocal":"2021-10-18 11:24:50","neighborhood":"Rosental (10km southeast of Graz)","softwareType":"WH2602 V4.6.1","country":"AT","solarRadiation":116.8,"lon":17.551328,"realtimeFrequency":null,"epoch":1634549090,"lat":41.977921,"uv":4.0,"winddir":204,"humidity":80,"qcStatus":1,"metric":{"temp":12,"heatIndex":12,"dewpt":9,"windChill":12,"windSpeed":3,"windGust":8,"pressure":null,"precipRate":0.00,"precipTotal":0.00,"elev":415}}]}*Zur weiteren Verarbeitung möchte ich mittels Blockly z.B. die Werte für "temp", "solarRadiation" und "precipTotal" selektieren. Bei meinen rudimentären Kenntnisse ist es mir leider trotz intensiver Recherche nicht gelungen eine Lösung zu finden.
Ich wäre sehr dankbar, wenn mir jemand weiter helfen könnte.
LG KarlWonderground? Da gibts doch schon was für iobroker.. schau mal hier:
https://github.com/SBorg2014/WLAN-Wetterstation -
Hallo,
ich frage über HTTP Request die Daten meiner eigenen Wetterstation von Wunderground ab und erhalte z.b. folgende Werte, die ich in einem Datenpunkt unter "o_userdata" schreiben lasse:*{"observations":[{"stationID":"IHEI***12","obsTimeUtc":"2021-10-18T09:24:50Z","obsTimeLocal":"2021-10-18 11:24:50","neighborhood":"Rosental (10km southeast of Graz)","softwareType":"WH2602 V4.6.1","country":"AT","solarRadiation":116.8,"lon":17.551328,"realtimeFrequency":null,"epoch":1634549090,"lat":41.977921,"uv":4.0,"winddir":204,"humidity":80,"qcStatus":1,"metric":{"temp":12,"heatIndex":12,"dewpt":9,"windChill":12,"windSpeed":3,"windGust":8,"pressure":null,"precipRate":0.00,"precipTotal":0.00,"elev":415}}]}*Zur weiteren Verarbeitung möchte ich mittels Blockly z.B. die Werte für "temp", "solarRadiation" und "precipTotal" selektieren. Bei meinen rudimentären Kenntnisse ist es mir leider trotz intensiver Recherche nicht gelungen eine Lösung zu finden.
Ich wäre sehr dankbar, wenn mir jemand weiter helfen könnte.
LG Karl -
@paul53 Aber muss er nicht mit dem Block erst den JSON String in das Objekt wandeln oder passiert das nun inzwischen mit dem neuen Javascript-Adapter automatisch?
-
@paul53 Aber muss er nicht mit dem Block erst den JSON String in das Objekt wandeln oder passiert das nun inzwischen mit dem neuen Javascript-Adapter automatisch?
-
@mickym Herzlichsten Dank. Es funktioniert genial. Jetzt muss ich mir nur noch bei Gelegenheit Zeit nehmen um das Ganze auch zu verstehen, heute ist es schon zu spät.
LG Karl@chappo59 sagte in Werte aus Wetterdaten selektieren:
@mickym Herzlichsten Dank. Es funktioniert genial. Jetzt muss ich mir nur noch bei Gelegenheit Zeit nehmen um das Ganze auch zu verstehen, heute ist es schon zu spät.
LG KarlNa die Lorbeeren stehen @paul53 zu . :)
-
@chappo59 sagte in Werte aus Wetterdaten selektieren:
@mickym Herzlichsten Dank. Es funktioniert genial. Jetzt muss ich mir nur noch bei Gelegenheit Zeit nehmen um das Ganze auch zu verstehen, heute ist es schon zu spät.
LG KarlNa die Lorbeeren stehen @paul53 zu . :)
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden

