FHEM > Automatisierung

[JsonMod] invalid server response bei EcoFlow API Abfrage

<< < (3/6) > >>

Kaspi:
Hi,

Ich habe neue Zugagsdaten von Ecoflow erhalten.
 
--- Zitat ---  https://api.ecoflow.com/iot-service/open/api/device/queryDeviceQuota?sn=xxxxxxxxxxxxx
  -H 'Content-Type: application/json'
  -H 'appKey: yyyyyyyyyyyyyyyyyyyyy'
  -H 'secrteKey: zzzzzzzzzzzzzzzzz'

--- Ende Zitat ---

Wie müßte nun der Zugang aussehen?

Kaspi 🙂

DS_Starter:

--- Zitat ---Ich habe neue Zugagsdaten von Ecoflow erhalten.

--- Ende Zitat ---
Oh, da muss ich gleich mal nachfragen.  :)
Wenn ich die auch habe, schaue ich es mir mal an.

LG

Kaspi:
sn, appKey, secretKey in secrets


--- Code: ---
defmod ECOFLOW_DeltaPro_JSONMOD JsonMod https://api.ecoflow.com/iot-service/open/api/device/queryDeviceQuota?
attr ECOFLOW_DeltaPro_JSONMOD httpHeader User-Agent:
attr ECOFLOW_DeltaPro_JSONMOD interval * * * * *
attr ECOFLOW_DeltaPro_JSONMOD room -USV-
attr ECOFLOW_DeltaPro_JSONMOD stateFormat <b>letztes Update:</b> lastUpdate , <b>Status:</b> message , <b>Ladezustand:</b> data_data_socSum
attr ECOFLOW_DeltaPro_JSONMOD userReadings lastUpdate:message.* {ReadingsTimestamp($name, 'message', '')}
attr ECOFLOW_DeltaPro_JSONMOD verbose 4

setstate ECOFLOW_DeltaPro_JSONMOD <b>letztes Update:</b> lastUpdate , <b>Status:</b> message , <b>Ladezustand:</b> data_data_socSum


--- Ende Code ---


ergibt im LOG:


--- Zitat ---2022.06.22 09:36:00 4: [ECOFLOW_DeltaPro_JSONMOD] start request
2022.06.22 09:36:00 4: [ECOFLOW_DeltaPro_JSONMOD] next request: 2022.06.22 09:37:00
2022.06.22 09:36:00 4: IP: api.ecoflow.com -> 163.171.128.138
2022.06.22 09:36:00 4: [ECOFLOW_DeltaPro_JSONMOD] start request
2022.06.22 09:36:00 4: [ECOFLOW_DeltaPro_JSONMOD] next request: 2022.06.22 09:37:00
2022.06.22 09:36:04 4: https://api.ecoflow.com/iot-service/open/api/device/queryDeviceQuota?: HTTP response code 200
2022.06.22 09:36:04 4: [ECOFLOW_DeltaPro_JSONMOD] api encoding is UTF-8, designated encoder is utf-8-strict


--- Ende Zitat ---

DS_Starter:
Hallo,

nun habe ich auch meinen neuen Zugang erhalten und den Datenabruf mit HTTPMOD ! neu eingerichtet.
Im URL Aufruf kommt nun nur noch die sn hinein.
Die Keys Content-Type, appKey und secretKey werden in drei Attribute requestHeaderXX gebaut.

Hier wieder meine RAW Definition des Devices zur Nachnutzung. Läuft nun wieder :) und ich kann die solare Aufladung des Gerätes abhängig von seinem Ladezustand im Modul SolarForecast freigeben.


--- Code: ---defmod EcoFlow HTTPMOD https://api.ecoflow.com/iot-service/open/api/device/queryDeviceQuota?sn=XXXXXXXX
attr EcoFlow alias EcoFlow River Max
attr EcoFlow bodyDecode auto
attr EcoFlow cmdIcon reread:rc_MINUS
attr EcoFlow extractAllJSON 1
attr EcoFlow group Ladestationen
attr EcoFlow icon it_ups
attr EcoFlow readingMaxAge 900
attr EcoFlow readingMaxAgeReplacement -10
attr EcoFlow readingMaxAgeReplacementMode text
attr EcoFlow requestHeader01 Content-Type: application/json
attr EcoFlow requestHeader02 appKey: XXXXXXXXXXXXXXXXXXXXX
attr EcoFlow requestHeader03 secretKey: XXXXXXXXXXXXXXXXXXXXXXXX
attr EcoFlow room Energie
attr EcoFlow showError 0
attr EcoFlow sortby 1
attr EcoFlow stateFormat <b>letzter Abruf:</b> lastUpdate | <b>Status:</b> message | <b>Ladezustand:</b> data_soc %
attr EcoFlow timeout 60
attr EcoFlow userReadings lastUpdate:message.* {ReadingsTimestamp($name, 'message', '')}
attr EcoFlow verbose 3
attr EcoFlow webCmd reread

--- Ende Code ---

LG,
Heiko

Kaspi:
und es kommt noch mehr  :)


--- Zitat ---Readings
code
0
2022-06-22 12:30:53
data_remainTime       286           2022-06-22 12:30:53
data_soc                     50           2022-06-22 12:30:53
data_wattsInSum      907            2022-06-22 12:30:53
data_wattsOutSum    381            2022-06-22 12:30:53
lastUpdate 2022-06-22 12:26:31 2022-06-22 12:26:31
message Success 2022-06-22 12:30:53

--- Ende Zitat ---

Kaspi

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln