Seite 1 von 1

Openhab 3 / json

Verfasst: 5. Aug 2021 16:33
von sadbi
Hallo zusammen,

Ich raufe mir meine wenigen Haare und komme nicht weiter
Ich will meinen Inverter per http-Bindung und json abfragen
Über die Adresse
http://192.168.178.46/solar_api/v1/GetI ... verterData
bekomme ich auch die Daten aufgelistet:
{
"Body" : {
"Data" : {
"DeviceStatus" : {
"InverterState" : "Running"
},
"FAC" : {
"Unit" : "Hz",
"Value" : 49.995403289794922
},

Habe in OH3 ein Thing definiert und auch einen Channel, der jedoch keinen Wert hat

UID: http:url:bde7a2dca2
label: Fronius json Inverter
thingTypeUID: http:url
configuration:
authMode: BASIC
ignoreSSLErrors: false
baseURL: http://192.168.178.46/solar_api/v1/GetI ... meData.cgi
refresh: 30
commandMethod: GET
contentType: application/json
timeout: 3000
bufferSize: 2048
channels:
- id: erstertest
channelTypeUID: http:number
label: erster Test
description: ""
configuration:
stateExtension: ?Scope=Device&DeviceId=1&DataCollection=CommonInverterData
stateTransformation: JSONPATH:$.Body:Data:DeviceStatus:InverterState

Kann mir irgendjemand auf die Sprünge helfen? Anscheinend verstehe ich die Logik nicht. Auch Google hat mir nicht geholfen.

Danke bereits im Voraus

Re: Openhab 3 / json

Verfasst: 5. Aug 2021 16:41
von udo1toni
Eigentlich sieht das schon ganz gut aus.

Tipp ins Blaue: hast Du den JSONPATH Transformation Service auch installiert?

Tipp 2: Starte mit einem String Channel und trage dort zunächst nicht sie Transformation ein. Den Inhalt des String Channels kannst Du dann bequem begutachten und damit sicherstellen, dass der Zugriff über http klappt. Danach baust Du die Transformation ein. Erst zum Schluss änderst Du den String Channel in einen Number Channel ab.


Gesendet von iPad mit Tapatalk

Re: Openhab 3 / json

Verfasst: 5. Aug 2021 16:53
von sadbi
Danke vorerst,
mit dem String bekomme ich alles heraus, mit der Transformation muss ich mich noch spielen, kann das aber erst in der Nacht machen.
Danke für die Hilfe

Re: Openhab 3 / json

Verfasst: 5. Aug 2021 19:11
von udo1toni
Ah, was ich gerade noch sehe…

Die Notation ist verkehrt.
Statt

Code: Alles auswählen

 stateTransformation: JSONPATH:$.Body:Data:DeviceStatus:InverterState
musst Du

Code: Alles auswählen

 stateTransformation: JSONPATH:$.Body.Data.DeviceStatus.InverterState
schreiben.

Gesendet von iPad mit Tapatalk

Re: Openhab 3 / json

Verfasst: 5. Aug 2021 19:26
von sadbi
Es funzt, habe nur die Doppelpunkte gegen einfache ausgetauscht.
Danke für Deine Hilfe.
Kann man Dir einen Kaffee spendieren?