JSON Daten in Entitäten sichern

Hallo Zusammen,
hat Jemand einen Tipp wie man z.B. die unten stehende JSON Datei (von einer Wetterstation) im Dashboard von HA darstellen kann ? Dank Simons Video “Webseiten-Daten auslesen”, konnte ich dies über den Browser durchführen… Über JSON ist es aber sicherlich eleganter, zumal hier auch weitere Daten vorhanden sind.

Michael

{
	"mac": "083a9dd81e66",
	"ssid": "Netzwerk",
	"firmversion": "1.4",
	"windspeed": "0",
	"winddir": "90",
	"rain": "12",
	"rainh": "0.0",
	"rain1": "0.0",
	"rain10": "0.0",
	"temperature1": "10.8",
	"temperature2": "17.2",
	"temperature3": "15.4",
	"humidity1": "99",
	"humidity2": "70",
	"humidity3": "74",
	"lowbat1": "0",
	"lowbat2": "0",
	"lowbat3": "0",
	"id1": "CF",
	"id2": "EF",
	"id3": "AF",
	"target1": "",
	"target2": "",
	"target3": ""	
}

:crayon:by HarryP: Codezeilen in Code-TAG’s eingebunden.

Moin,
Guck dir das mal an:

Gute Nacht
Tobi

1 „Gefällt mir“

Hallo Tobi,
danke für den Hinweis.
Ich habe dann folgenden Eintrag erstellt:

rest:
  - authentication: basic
#   username: "admin"
#   password: "password"
#   scan_intervall: 60
#   unique_id: Wetterstation
    resource: http://192.168.178.69/data.json
    sensor:
      - name: "Wetterstation"
        json_attributes_path: "$.response.system"
        value_template: "OK"
        json_attributes:
          - "mac"
          - "ssid"
          - "firmversion"
          - "windspeed"
          - "winddir"
          - "rain"
          - "rainh"
          - "rain1"
          - "rain10"
          - "temperature1"
          - "temperature2"
          - "temperature3"
          - "humidity1"
          - "humidity2"
          - "humidity3"
          - "lowbat1"
          - "lowbat2"
          - "lowbat3"
          - "id1"
          - "id2"
          - "id3"
          - "target1"
          - "target2"
          - "target3"

Einen Benutzername und ein Password brauche ich ja nicht für den Zugriff auf diese Seite.
Bei dem Scan_Interval und der unique_ID (die ich doch zur Anzeige auf dem Dashboard benötige) bekomme ich die Information “Konfiguration fehlerhaft !”

Intervall schreibt sich im Englischen mit einem l. Als unique_id einfach mal irgendwas anderes ausprobiert?, bzw. das auch in “” gesetzt?

Die ID wie alle ID’s in HA nur klein schreiben, keine Leerzeichen oder andere sonderzeichen.

Wie @z-master schon sagte scan_interval wir mit nur einem L geschrieben.

Die zeilen für user und pw kannst du auch ganz weg lassen wen du kein Login benötigst.

Edit:
Und es kann sein das du die unique_id weiter einrücken und unter - name: setzen musst.

LG
Tobi

Wow, es geht voran :wink: Das “l” war es und die unique_id habe ich unter - name gesetzt.
Ich habe dann eine Etitäten-Karte ausgewählt und hier die wetterstation jetzt auch gefunden.
Bekomme aber als Wert ein “OK” angezeigt. Ich dachte, daß ich nun erstens für jedes Feld eine Entität erhalte und dann als Ergebnis den entsprechenden Wert erhalte.

Jetzt hast du die Werte ja nur als Attribut, wenn du für alles eine eigenen Sensor hoben möchtest muss du das so aufbauen:

rest:
  - resource: http://192.168.178.69/data.json
    scan_interval: 60
    sensor:
      - name: "Temperatur1"
        value_template: "{{ value_json['temperature1'] }}"
        unit_of_measurement: "°C"
      - name: "Temperatur2"
        value_template: "{{ value_json['temperature2'] }}"
        unit_of_measurement: "°C"
      - name: "Temperatur3"
        value_template: "{{ value_json['temperature3'] }}"
        unit_of_measurement: "°C"

usw…

LG
Tobi

Zuerst einmal, vielen Dank !
Wenn man es vor sich hat, sieht es ja einfach aus, aber die Kunst ist es, es selbst zu finden. :face_with_monocle:
Mir fehlt offensichtlich noch sehr viel Hintergrundwissen. - diese “Lehrstunde” war sehr motivierend. :blush:

Gruß
Michael

Super Lösung.
Passt vermutlich auch für meine Konstellation aber wie bekomme ich den Sensor angezeigt?
Wenn ich einen neuen Sensor einem Dashboard hinzufüge, dann kann ich den, unter dem Namen , nicht auswählen.

Was mache ich falsch?

Gruß