Seite 3 von 4

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 12:12
von Hoggle
Hallo noch einmal.
Was programmieren angeht bin ich, wie oben schon beschrieben nicht ganz so fit.

Ich habe jetzt das http-Binding installiert und ein Thing angelegt.
Openhab Fronius http Thing.png
und jetzt? - Ist die URL überhaupt richtig?
Wie gehe ich jetzt vor, um einzelne Channel anzulegen und mit Items zu verlinken?

In OH2 mussten die Transformationen (json, Map,...) installiert werden, aber ich finde die im OH3 nicht. Wo/Wie installiere ich die? In der offiziellen Doku steht, das die installiert werden müssen, aber leider nicht wo und wie.

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 12:16
von UausO
Hallo,
schau mal unter:
Einstellungen
.... Other Add-ons,
da findest du sie

Viele Grüße
Ulrich

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 12:53
von Quautiputzli
Genau, wie @UoausO schreibt, unter "Other Add-ons" die Transformation Add ON "jsonPATH Transformation" installieren.

Ich hab bei der url noch das "http://" davor, aber das könnte auch so gehen. Dann in dem neuen Thing "Add Channel" anklicken, und den Channel eindeutig benennen.
Dort im Feld "State url extension" eingeben

Code: Alles auswählen

GetStorageRealtimeData.cgi?Scope=System
Unter Unit kannst du "%" eingeben. --> Channel erstellen.

Dann kannst du den Channel mit einem Item verlinken. Entweder gleich ein neues erstellen, oder ein vorhandenes nutzen. Den Link dann über das JSONPATH verlinken mit

Code: Alles auswählen

JSONPATH:$.Body.Data.0.Controller.StateOfCharge_Relative
Bild_2022-11-03_125324312.png
Dann sollte der Wert bei deinem Item erscheinen.

Wenn das geschafft ist kümmern wir uns um die anderen Kanäle.

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 14:33
von udo1toni
Quautiputzli hat geschrieben: 3. Nov 2022 12:53 Ich hab bei der url noch das "http://" davor, aber das könnte auch so gehen
Nein, das Protokoll ist zwingend anzugeben. Schließlich könnte das http Binding genauso gut auch https sprechen. Die Base URL sollte also mindestens so aussehen:

Code: Alles auswählen

http://10.1.1.50/solar_api/v1/
Die Base URL wird jeder extension (also state Extension bzw. command extension jedes zugehörigen Channels) vorangestellt, und zwar exakt so wie angegeben. Das heißt, man muss auch auf den Slash achten, umgekehrt könnte man aber auch ohne weiteres solch eine BASE URL verwenden:

Code: Alles auswählen

http://10.1.1.50/solar_api/v
und müsste dann im Channel in der jeweiligen extension halt immer 1/ voranstellen. Dafür könnte man aber auch ein 2/ voranstellen, wenn Fronius auf die Idee käme, zwei unterschiedliche APIs parallel anzubieten (und Daten teilweise nur in der v1 oder in der v2 abrufbar wären... )

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 15:31
von Hoggle
Dank eurer super tollen Hilfe bin ich einen Schritt weiter, aber leider noch nicht am Ziel.
Habe im Thing http:// ergänzt, wie Udo1Toni geraten, aber der angezeigte Status ist noch nicht ganz das, was ich wollte :shock:
Openhab Fronius http Item Link.png

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 16:12
von Quautiputzli
Ja, das ist nun der gesamte JSON String. Hast du denn den Channel via JSON verlinkt?

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 16:32
von Hoggle
Meinen Verständnis nach sollte ich das gemacht haben:
Openhab Fronius http Channel config.png
Openhab Fronius http Item JASON.png

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 16:55
von Quautiputzli
Ja, sollte so passen.
Hast du die JSONPATH Transformation auch installiert?

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 17:48
von Hoggle
Quautiputzli hat geschrieben: 3. Nov 2022 16:55 Ja, sollte so passen.
Hast du die JSONPATH Transformation auch installiert?
Ja

Re: Fronius: Überschüssige Energie berechnen

Verfasst: 3. Nov 2022 18:24
von Quautiputzli
Versteh ich nun auch nicht. Du kannst auch mal versuchen die Transformation direkt in den Channel zu schreiben,
so:
Bild_2022-11-03_182403714.png