mrheisenberg

HomeAssistant und die Freude der YAML

gelöstFrageLinux
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:

{
  "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:

screenshot 2025-05-27 104729

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') }}  

screenshot 2025-05-27 105238

zum Mäusemelken...

Der Sensor ist soweit korrekt:

screenshot 2025-05-27 105436

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....

screenshot 2025-05-27 105937

leider gibts im HACS keine fertige Integration, weswegen ich mir dies manuell "Antun" darf/kann/will.

Grüße
H
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 673050

Url: https://administrator.de/forum/homeassistant-und-die-freude-der-yaml-673050.html

Ausgedruckt am: 18.07.2025 um 05:07 Uhr

Delta9
Delta9 27.05.2025 um 11:22:15 Uhr
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 BLOG
gammelobst
gammelobst 27.05.2025 um 16:43:39 Uhr
Zitat von @Delta9:

Moin,
kurze Nebeninfo: Deine Art HA zu betreiben ist mit HA 2025.06 deprectated und 6 Monate später nicht megr supportet: HA BLOG

Wo hast du gesehen, dass er HA Core oder HA supervised benutzt?
und ob er i386, armhf oder armv7 hat?
kadde71
Lösung kadde71 28.05.2025 um 07:32:12 Uhr
Moinsen
probier mal statt
 json_attributes_topic: "airkey/users"  
 json_attributes_template: >
         {
           "personList": {{ value_json.personList | tojson }}    
         }
dieses
 json_attributes_topic: "airkey/users/personList"  
 json_attributes_template: "{{ value_json.personList | tojson }}"  
Delta9
Delta9 28.05.2025 um 10:34:06 Uhr
Zitat von @gammelobst:

Zitat von @Delta9:

Moin,
kurze Nebeninfo: Deine Art HA zu betreiben ist mit HA 2025.06 deprectated und 6 Monate später nicht megr supportet: HA BLOG

Wo hast du gesehen, dass er HA Core oder HA supervised benutzt?
und ob er i386, armhf oder armv7 hat?
OT:
OK, dann korrigiere ich mich und ergänze um ein "vielleicht" face-smile Da er aber schrieb HA unter Debian und 2/3tel der manuellen Installationsmethoden rausfliegen dürfte meine Trefferquote doch recht hoch sein.

@MrHeisenberg: welche Installationsmethode nutzt du denn?
MrHeisenberg
MrHeisenberg 30.05.2025 um 08:23:22 Uhr
Moinsen Leute,

danke für den Tipp @kadde71 , er hat mich in die richtige Richtung geschubst.

@Delta9 , die Installationsmethode ist korrekt, sprich Debian + HA supervised, damit auch die HACS Integrationen verwendbar sind, denke dieses wird zu 99,99% verwendet ;)

Nachdem ich nun AirKey in das System gewurschtelt habe, hab ich mich dann auch in den Topic von HA eingelesen und werde nun dass HA-OS installieren auf einem neuen MicroPC ohne Hyper-V.

Von der Leistung hab ich einen Ryzen7 1tb SSD sowie 16GB RAM gezogen da ich auch einige Kameras via FullHD / 4K Stream abgreifen möchte, und auch die ganzen Automatisierungen laufen sollen ohne dass mein System irgendwo Schluckauf bekommt.

Kann den Link zum MicroPC posten wenn von Interesse.

SG M