Externe Daten
Auto-Entities
Die Karte kann mit custom:auto-entities kombiniert werden. Auto-Entities übernimmt dann die Filterung, flex-table-card die tabellarische Ausgabe.
type: custom:auto-entities
filter:
include:
- entity_id: "/light.luce_*/"
card:
type: custom:flex-table-card
title: Auto-Entities Beispiel
clickable: true
columns:
- name: Name
data: friendly_name
- name: Status
data: stateOriginal-Beispielbild: Auto-Entities Result
Daten aus Home-Assistant-Aktionen
Home Assistant verschiebt viele größere Datenstrukturen aus Attributen in Aktionsantworten. Die flex-table-card kann solche Antworten als Datenquelle verwenden.
type: custom:flex-table-card
title: Wettervorhersage
action: weather.get_forecasts
action_data:
type: hourly
entities:
- weather.home
columns:
- name: Zeit
data: forecast.datetime
modify: new Date(x).toLocaleString()
- name: Temperatur
data: forecast.temperature
suffix: " °C"
- name: Regen
data: forecast.precipitation_probability
suffix: "%"Wichtig: Die Karte aktualisiert sich, wenn sich eine angegebene Entität ändert. Bei Aktionsdaten sollte deshalb eine passende Entität unter entities stehen.
Original-Beispielbild: WeatherServiceExample.png
Daten aus Skripten
Auch ein Skript kann eine Antwort liefern.
type: custom:flex-table-card
title: Script Beispiel
action: script.test_response
entities: []
columns:
- name: Name
data: family.name
- name: Geburtsjahr
data: family.yearBeispielskript:
test_response:
alias: Test Response
variables:
family: >
{% set myfamily = { "family": [
{ "name": "Emil", "year": 2004 },
{ "name": "Tobias", "year": 2007 },
{ "name": "Linus", "year": 2011 }
] } %}
{{ myfamily }}
sequence:
- stop: All Done
response_variable: familyWenn entities: [] genutzt wird, muss die oberste Ebene der Antwort direkt die Listenstruktur enthalten, zum Beispiel family.
Original-Beispielbild: ScriptExample.png
CSV-Dateien über Command-Line-Sensor
Die flex-table-card liest Dateien nicht direkt. Der übliche Weg ist ein Home-Assistant-Sensor, der die Datei in JSON-Attribute umwandelt.
command_line:
- sensor:
name: Water Tank Refill Logs
command: >
curl -s http://<HA-IP>:8123/local/WaterTank.csv |
jq --slurp --raw-input --raw-output
'{refill_logs: split("\r\n") | .[1:] | map(split(",")) | map({"startTime": .[0],"startVolume": .[1],"endVolume": .[2],"litersDelivered": .[3],"duration": .[4]})}'
json_attributes:
- refill_logs
scan_interval: 3600Passende Karte:
type: custom:flex-table-card
title: Wasser-Tank Befuellung
entities:
include: sensor.water_tank_refill_logs
columns:
- name: Start
data: refill_logs.startTime
modify: new Date(x).toLocaleString()
- name: Startvolumen
data: refill_logs.startVolume
- name: Endvolumen
data: refill_logs.endVolume
- name: Liter
data: refill_logs.litersDelivered
- name: Dauer
data: refill_logs.duration
suffix: " s"Original-Beispielbild: WaterTank.png
