29.7.22

Openhab und Ecoflow Max - API Anbindung

 Ich wollte die neu erworbene Powerstation in Openhab einbinden, um den aktuellen Status (Ladestand etc.) über Openhab auswerten zu können.

Eine Google-Suche ergab, dass man dafür den Support (support@ecoflow.com) anschreiben muss, der neben der Seriennummer der Powerstation auch die Email-Adresse benötigt, mit der man über die App verbunden ist (ohne Registrierung in der App geht es wohl nicht?).


Der 1st level Support antwortet immer ziemlich schnell, gibt die Daten an die Entwickler weiter und nach 2-3 Tagen erhält man den Zugang für die API.

Der Code, um die Ecoflow als thing zu definieren, sieht bei mir wie folgt aus:

UID: http:url:42fde8xxxx
label: Ecoflow
thingTypeUID: http:url
configuration:
  authMode: BASIC
  headers:
    - Content-Type=application/json
    - appKey=[vom Support mitgeteilt]
    - secretKey=[vom Support mitgeteilt]
  ignoreSSLErrors: false
  baseURL: https://api.ecoflow.com/iot-service/open/api/device/queryDeviceQuota?sn=[Seriennummer] 
 delay: 0
  stateMethod: GET
  refresh: 30
  commandMethod: GET
  timeout: 3000
  bufferSize: 2048

Als Channel habe ich testweise erst einmal die verbleibende Zeit definiert:

channels:
- id: ecoremaintime
    channelTypeUID: http:string
    label: Verbliebene Zeit
    description: null
    configuration:
      stateTransformation: JSONPATH:$.data.remainTime


So bekomme ich dort die verbliebenen Minuten, die die Powerstation noch voraussichtlich laufen kann.


3 Kommentare:

  1. Hallo, genau das selbe hab ich auch vor, hab aber auf die Art und Weise noch nie ein Thing angelegt in Openhab. Schreib ich das einfach so in die Thing datei rein oder wie müsste das aussehen? Würde mich sehr über eine Antwort freuen.

    AntwortenLöschen
  2. Der angezeigte Code ist im yaml Format. MAn legt über die UI ein Thing des passenden Typs an (hier also ein http thing) und kopiert anschließend den gesamten Code über den bestehenden Code drüber. Damit sollten dann alle Werte in der UI entsprechend gesetzt sein.

    AntwortenLöschen
  3. Hallo, ich habe das Thing + den Channel entsprechend angelegt. Wie bekomme ich die Werte als Item angezeigt und dann am besten auch im Openhab / Habpanel visualisiert? Gibt es weitere Werte wie Ladestand (%) oder Ladeleistung (Watt) die man sich anzeigen lassen kann?
    Ich würde mich über eine Antwort sehr freuen.
    Wird es ein offizielles Binding Ecoflow geben? Was denken Sie?

    AntwortenLöschen

Openhab und Ecoflow Max - API Anbindung

 Ich wollte die neu erworbene Powerstation in Openhab einbinden, um den aktuellen Status (Ladestand etc.) über Openhab auswerten zu können. ...