NEWS
Lovelace: Daten als Tabelle darstellen
-
Hallo zusammen,
das ist mein erster Post hier im Forum, ich lese allerdings schon länger mit und habe auch schon die ein oder andere Lösung gefunden - leider aber nicht für mein aktuelles Problem:Ich habe eine Kamera, welche bei Auslösen eines Alarms ein Video (MP4) per SFTP auf meinen Server lädt. Per JavaScript werte ich im ioBroker das Alarm-Protokoll aus und lese dabei u.a. den Zeitstempel und den Dateinamen des Videos aus.
Diese Daten schreibe ich in einen Datenpunkt, nennen wir ihn
0_userdata.cameras.cam0.alarmhistory
Mein Ziel ist es, eine Übersicht der Alarm-Ereignisse der letzten 24h in Tabellenform in meiner Lovelace-Instanz anzuzeigen.
Ich bin nach einiger Recherche bei der Markdown-Card gelandet da sie vielfältige Gestaltungsmöglichkeiten bietet. Ich hatte gehofft in Kombination mit Bindings zum Erfolg zu kommen, es klappt aber leider nicht ganz wie ich es mir vorstelle.
Ich habe mehrere Ansätze probiert:
1.) o.g. Datenpunkt als "List" konfiguriert und die Daten als Array geschrieben
2.) o.g. Datenpunkt als "JSON" konfiguriert und die Daten als JSON geschrieben
3.) o.g. Datenpunkt als "String" konfiguriert und die Daten als String geschriebenDer 3. Ansatz klappt tatsächlich, allerdings nur da ich die Daten bereits via JS im richtigen Format eintrage (per | als Trennzeichen).
Das ist jedoch nicht was ich mir vorstelle. Ich möchte die Daten gern dynamisch darstellen und das kann nur klappen wenn es eine Datenstruktur ist und kein fixer String. Diese Lösung schaut aktuell wie folgt aus:
type: markdown content: |- |Zeit|Video |--|--| {0_userdata.cameras.cam0.alarmhistory} title: Alarme der letzten 24h
Ich habe nach diversen Recherchen folgenden Ansatz versucht:
Daten:
[ {"date":"2024-01-01 12:00:00","file":"file1.mp4"}, {"date":"2024-01-02 13:00:00","file":"file2.mp4"} ]
Binding:
{% set alerts = {0_userdata.cameras.cam0.alarmhistory} %} {% for alert in alerts %} {{ | alert[date] | alert[file] }} {% endfor %}
Leider stürzt meine Lovelace-Instanz kontinuierlich ab, sobald ich versuche so etwas einzufügen.
Habt ihr einen Tip für mich, wie ich solche Daten strukturiert darstellen darstellen kann?
Ich bin offen für alternative Lösungen (JSON, Array, ...) oder Darstellungen (andere Cards?).
Danke,
Horst