Seite 1 von 1

Bild in Sitemap anzeigen lassen (Einbindung Dreame X40)

Verfasst: 30. Nov 2024 14:52
von nw378
Moin.

Ich möchte gerne ein (sich regelmäßig updatendes) Bild in der Sitemap anzeigen lassen.

Die URL dazu lautet

Code: Alles auswählen

http://192.168.178.120:8123/api/camera_proxy_stream/camera.x40_ultra_complete_map?token=xyz123
Dooferweise steht in der Beschreibung der sitemap items https://www.openhab.org/docs/ui/sitemap ... type-image:
on a reachable website or webserver without password or access token
Weiter:
Alternatively, the image file (e.g. YourImageFile.png) may be stored locally in the $OPENHAB_CONF/html folder, and will be accessible through the static route, https://<my.openHAB.device>:8080/static/YourImageFile.png.
Wie kann ich denn nun das Bild dort regelmäßig speichern, die älteren löschen, und das aktuelle in der Sitemap anzeigen lassen?

Mein (nicht geglückter und unvollständiger) Versuch hierzu sieht so aus:

Code: Alles auswählen

rule "Dreame: Kartenupdate"
when
    Time cron "0 * * * * ?" 
then
    val url = "http://192.168.178.120:8123/api/camera_proxy_stream/camera.x40_ultra_complete_map?token=xyz123"
    val outputfile = "/tmp/" + now.format(DateTimeFormatter.ofPattern("HH-mm_dd-MM-yyyy")) + ".jpg"  //Dateiformat???
    var cmd = "wget -O " + outputfile + " " + url
    executeCommandLine(cmd)
end
Alternativ hatte ich noch "Webview" probiert, allerdings auch ohne Erfolg.

Re: Bild in Sitemap anzeigen lassen

Verfasst: 1. Dez 2024 14:23
von nw378
Hat sich erledigt.

Zum Hintergrund: ich bin dabei meinen Dreme X40 Saugroboter in OH einzubinden. Leider gibt es dafür kein Binding. (Das Xiaomi-Binding funktioniert nur für ältere Dreame-Modelle. Inzw. arbeitet Dreame mit einer eigenen App und anderen Servern).

Ich habe inzwischen Home Assistant als "Binding" installiert (hüstel). Und lasse OH und HA per mqtt miteinander kommunizieren (Statusmeldungen und Kommandos).

Dazu wollte ich die aktuelle Karte von HA nach OH transferieren.
Gelöst habe ich dies dadurch, HA per automation.yaml einen snapshot je Minute erstellen zu lassen und diesen im www Verzeichnis abzuspeichern.
OH zieht diesen dann regelmäßig mittel wget in einer Bashdatei.

Code: Alles auswählen

wget -O /etc/openhab/html/x40map.jpg "http://192.168.178.120:8123/local/x40map.jpg"
Zwischenergebnis:
sitemap_x40.jpg