HomeAssistant und die Freude der YAML
Moin Leute,
ich habe ein tolles Problem, ich verwende HA unter Debian, läuft alles soweit top...
Ich beiße mir aber gerade seit 3 Tagen die Zähne aus, folgendes Szenario habe ich:
AirKey Onlineverwaltung wird via API-Key abgegriffen im Read Modus damit ich Infos wie
- Wartungsaufgaben
- Schließzylinder
- User
- Medien
usw. erhalte, ich rufe via MQTT ab, habe auch schon via Node-Red im HA einen Flow erstellt, dieser läuft und liefert mir folgenden Output:
Den String greife ich zur Kontrolle mit dem MQTT-Explorer ab.
Nun will im HA nur der erstelle Sensor die Daten nicht verarbeiten, der Sensor läuft und bekommt auch Daten, da er mir "9" anzeigt, mehr aber nicht:
Sprich er greift mir die Menge ab an Usern, aber scheinbar nicht die Namen, im configuration.yaml unter HA habe ich folgenden Sensor hinzugefügt:
die Datei ist auch valide, sprich über YAMLlint werden keine Fehler gezeigt, auch wird der "Sensor: mqtt" nur 1x verwendet....
Wenn ich nun unter Entwicklertools gehe und nun teste was er bekommt mit diesem Code kommt wieder einmal... genau nix
zum Mäusemelken...
Der Sensor ist soweit korrekt:
was hab ich bereits alles versucht:
MQTT-Daten erfolgreich gesendet
Payload {"personList": [...]} wird über airkey/users korrekt gepublished.
MQTT-Sensor in Home Assistant erstellt
Zeigt korrekt state = 9 an → value_template funktioniert.
json_attributes_template verwendet
Versucht personList als Attribut zu setzen → bleibt jedoch null / None.
Im Developer-Template getestet:
states('sensor.airkey_benutzerliste') → gibt korrekt 9 zurück.
state_attr(..., 'personList') → gibt None zurück, obwohl MQTT-Daten vorhanden.
Markdown-Karte erstellt:
Template-Syntax korrekt, zeigt aber keine Daten wegen fehlendem personList-Attribut.
Node-RED verwendet:
JSON korrekt aufbereitet und an airkey/users gesendet.
Funktion wurde angepasst, um nur id, firstName, lastName zu übergeben.
MQTT Explorer genutzt:
Payload geprüft – JSON-Format ist korrekt.
Home Assistant Konfiguration angepasst:
Sensor mehrfach überarbeitet, neu geladen, getestet, neu gestartet.
und jetzt steh ich vor einem Wald und sehe diesem vor lauter Bäumen nicht mehr....
Hier ist noch der Code für die Anzeigekarte:
Irgendwo ist ein Fehler den ich übersehe....
Bitte wenn jemand eine Idee hat, ich steh kurz davor aufzugeben, aber es muss doch möglich sein, da ich andere Werte erhalte, sprich der API ist korrekt, sowie die Programmierung welche ich im HA gemacht habe funktionieren....
leider gibts im HACS keine fertige Integration, weswegen ich mir dies manuell "Antun" darf/kann/will.
Grüße
H
ich habe ein tolles Problem, ich verwende HA unter Debian, läuft alles soweit top...
Ich beiße mir aber gerade seit 3 Tagen die Zähne aus, folgendes Szenario habe ich:
AirKey Onlineverwaltung wird via API-Key abgegriffen im Read Modus damit ich Infos wie
- Wartungsaufgaben
- Schließzylinder
- User
- Medien
usw. erhalte, ich rufe via MQTT ab, habe auch schon via Node-Red im HA einen Flow erstellt, dieser läuft und liefert mir folgenden Output:
{
"personList": [
{
"id": 000000,
"firstName": "User",
"lastName": "User"
},
{
"id": 000000,
"firstName": "User",
"lastName": "User"
},
{
"id": 000000,
"firstName": "Reserve",
"lastName": "User"
},
{
"id": 000000,
"firstName": "User",
"lastName": "User"
},
{
"id": 000000,
"firstName": "Gast",
"lastName": "User"
},
{
"id": 000000,
"firstName": "User",
"lastName": "User"
},
{
"id": 000000,
"firstName": "User",
"lastName": "User"
},
{
"id": 000000,
"firstName": "User",
"lastName": "Userl"
},
{
"id": 000000,
"firstName": "User",
"lastName": "User"
}
]
}
Den String greife ich zur Kontrolle mit dem MQTT-Explorer ab.
Nun will im HA nur der erstelle Sensor die Daten nicht verarbeiten, der Sensor läuft und bekommt auch Daten, da er mir "9" anzeigt, mehr aber nicht:
Sprich er greift mir die Menge ab an Usern, aber scheinbar nicht die Namen, im configuration.yaml unter HA habe ich folgenden Sensor hinzugefügt:
- name: "AirKey Benutzerliste"
unique_id: airkey_benutzerliste
state_topic: "airkey/users"
value_template: "{{ value_json.personList | length }}"
json_attributes_topic: "airkey/users"
json_attributes_template: >
{
"personList": {{ value_json.personList | tojson }}
}
die Datei ist auch valide, sprich über YAMLlint werden keine Fehler gezeigt, auch wird der "Sensor: mqtt" nur 1x verwendet....
Wenn ich nun unter Entwicklertools gehe und nun teste was er bekommt mit diesem Code kommt wieder einmal... genau nix
type: markdown
title: Debug
content: >
Zustand: {{ states('sensor.airkey_benutzerliste') }}
<br> Attribut personList: {{ state_attr('sensor.airkey_benutzerliste', 'personList') }}
zum Mäusemelken...
Der Sensor ist soweit korrekt:
was hab ich bereits alles versucht:
MQTT-Daten erfolgreich gesendet
Payload {"personList": [...]} wird über airkey/users korrekt gepublished.
MQTT-Sensor in Home Assistant erstellt
Zeigt korrekt state = 9 an → value_template funktioniert.
json_attributes_template verwendet
Versucht personList als Attribut zu setzen → bleibt jedoch null / None.
Im Developer-Template getestet:
states('sensor.airkey_benutzerliste') → gibt korrekt 9 zurück.
state_attr(..., 'personList') → gibt None zurück, obwohl MQTT-Daten vorhanden.
Markdown-Karte erstellt:
Template-Syntax korrekt, zeigt aber keine Daten wegen fehlendem personList-Attribut.
Node-RED verwendet:
JSON korrekt aufbereitet und an airkey/users gesendet.
Funktion wurde angepasst, um nur id, firstName, lastName zu übergeben.
MQTT Explorer genutzt:
Payload geprüft – JSON-Format ist korrekt.
Home Assistant Konfiguration angepasst:
Sensor mehrfach überarbeitet, neu geladen, getestet, neu gestartet.
und jetzt steh ich vor einem Wald und sehe diesem vor lauter Bäumen nicht mehr....
Hier ist noch der Code für die Anzeigekarte:
type: markdown
title: 👥 AirKey Benutzerliste
content: >
{% set personen = state_attr('sensor.airkey_benutzerliste', 'personList') %}
{% if personen is iterable and personen | length > 0 %}
{% for person in personen %}
- 👤 **{{ person.firstName }} {{ person.lastName }}** (ID: `{{ person.id }}`)
{% endfor %}
{% else %}
_Noch keine Benutzerdaten verfügbar._
{% endif %}
Irgendwo ist ein Fehler den ich übersehe....
Bitte wenn jemand eine Idee hat, ich steh kurz davor aufzugeben, aber es muss doch möglich sein, da ich andere Werte erhalte, sprich der API ist korrekt, sowie die Programmierung welche ich im HA gemacht habe funktionieren....
leider gibts im HACS keine fertige Integration, weswegen ich mir dies manuell "Antun" darf/kann/will.
Grüße
H
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 673050
Url: https://administrator.de/forum/homeassistant-und-die-freude-der-yaml-673050.html
Ausgedruckt am: 27.05.2025 um 23:05 Uhr
2 Kommentare
Neuester Kommentar
Moin,
Zitat von @MrHeisenberg:
ich habe ein tolles Problem, ich verwende HA unter Debian, läuft alles soweit top...
kurze Nebeninfo: Deine Art HA zu betreiben ist mit HA 2025.06 deprectated und 6 Monate später nicht megr supportet: HA BLOGich habe ein tolles Problem, ich verwende HA unter Debian, läuft alles soweit top...