Wenn immer ich an meinem Home Assistant Setup Dinge anpasse oder ergänze, greife ich eigentlich auf die Entwicklerwerkzeuge von Home Assistant zurück. Die Entwicklerwerkzeuge ermöglichen einem sehr einfach Zugriff auf Zustände von Entitäten/Sensoren oder Erlauben das Ausführen von Diensten (also Skripten oder Automatisierungen beispielsweise) und natürlich die Templates. In diesem Beitrag werfe ich auf die Möglichkeiten mit den Home Assistant Entwicklerwerkzeugen einen kurzen Blick.
Inhaltsverzeichnis
Was sind die Entwicklerwerkzeuge von Home Assistant?
Die Entwicklerwerkzeuge sind „ab Werk“ bei Home Assistant an Bord und aktiv. Links im Hauptmenü findest du den Eintrag Entwicklerwerkzeuge.
In den Entwicklerwerkzeugen erhältst du dann Zugriff auf
- YAML-Dateien
- Zustände
- Dienste
- Template
- Ereignisse
- Statistik und
- Assist
Was du mit den jeweiligen Unterfunktionen konkret machen kannst, erkläre ich dir jetzt:
Du magst Home Assistant? Dann abonniere kostenlos meine Beiträge mit Tipps, Tricks und Anleitungen rund um Home Assistant:
Follow Home Assistant
Garantiert kein Spam, keine Werbung und immer mit Abmelde-Link, solltest du es dir anders überlegen!
Entwicklerwerkzeuge: YAML
Über den Menüpunkt YAML in den Entwicklerwerkzeugen von Home Assistant hast du die Möglichkeit die Konfigurationen deiner YAML-Dateien grundlegend zu überprüfen.
Diese Überprüfung soll sicherstellen, dass fehlerhafte YAML-Einträge das Starten von Home Assistant selbst oder einzelner Integrationen verhindern.
Ich nutze diese rudimentäre Überprüfung meiner YAML-Dateien relativ häufig, nämlich immer dann, wenn ich im Editor Änderungen an den Konfigurationen vorgenommen habe. Bevor ich dann unbedacht einen Neustart ausführe klicke ich kurz auf „Konfiguration prüfen“ und warte das Ergebnis ab, bevor ich mein Home Assistant neustarte.
Unterhalb dieser Funktion, bekommst du alle YAML-Konfigurationen gruppiert nach Konfigurations-Typ (also beispielsweise Automatisierungen, Skripte oder Kommandozeilen-Entitäten) aufgelistet und kannst jede einzeln oder alle per Mausklick Neuladen, damit vorherige Änderungen an diesen aktiv werden.
Entwicklerwerkzeuge: Zustände
Unter Zustände bekommst du alle Entitäten aufgelistet, auf die du in Home Assistant zugreifen kannst.
Im oberen Bereich kannst du den Zustand einer Entität setzen, also verändern. Hierfür wählst du aus dem Dropdown die gewünschte Entität aus und kannst dann im Feld Zustand den gewünschten neuen Zustand eingeben.
Diese Funktion habe ich selbst noch gar nicht genutzt – aber vielleicht hast du einen Tipp für mich, wann oder wieso das nützlich sein könnte?
Im Bereich darunter werden dir in einer Tabelle alle Entitäten/Sensoren von deinem Setup angezeigt. Über die Überschriften kannst du hier filtern und die gewünschte Entität einfach auswählen.
Zu jeder Entität bekommst du den Zustand, sowie, sofern gegeben, die Attribute der Entität (wie man die Attribute auslesen/nutzen kann, hatte ich schon einmal hier beschrieben) angezeigt:
Diese Information sichte ich relativ häufig, wenn ich mittels YAML-Code eigene Skripte, Automatisierungen oder Templates baue um den Ist-Zustand einer Entität und somit das zu erwartende Verhalten meines YAML-Codes zu kennen.
Entwicklerwerkzeuge: Dienste
Im Bereich Dienste kann man jeden zur Verfügung stehenden Dienst auslösen/abfeuern. Ein Dienst kann ein Skript, eine Automatisierung oder auch beispielsweise ein REST-Command sein.
Hierfür wählt man aus dem Dropdown einfach den auszuführenden Dienst aus, gibt die ggf. möglichen Daten ein und klickt auf Dienst ausführen.
Ebenso kann es möglich sein, dass man bei einem Dienst auf den UI-Modus wechseln kann (oder halt YAML-Modus, je nachdem, was man zuvor genutzt hat). Hierüber ist es in der Regel etwas einfach die möglichen Option für die Daten des Dienstes zu definieren.
Den Bereich Dienste der Entwicklerwerkzeuge nutze ich relativ häufig um neuen Code schnell und unkompliziert ausprobieren zu können. Unter Umständen kann es nötig sein die relevanten YAML-Konfigurationen neu zuladen (erster Abschnitt in diesem Beitrag), damit Änderungen wirksam werden.
Entwicklerwerkzeuge: Template
Den Template-Bereich der Entwicklerwerkzeuge in Home Assistant nutze ich vermutlich am häufigsten!
Im Bereich Template kannst du sehr einfach deinen Code auf korrekte Funktionalität überprüfen, was insbesondere beim Zugriff auf Attribute eines Sensors super hilfreich ist.
Links im Eingabefeld schreibst du deinen zu testenden YAML-Code zu welchem dir „in Echtzeit“ rechts das jeweilige Ergebnis angezeigt wird:
Immer wenn ich hier in Beiträgen individuellen YAML-Code für eine Lösung/Idee angebe, ist dieser ziemlich sicher im Template-Editor der Entwicklerwerkzeuge (teilweise) entstanden! 😉
Entwicklerwerkzeuge: Ereignisse
Im Bereich Ereignisse der Entwicklerwerkzeuge von Home Assistant kannst du live „belauschen“, welche Ereignisse dein Home Assistant mitgeteilt bekommt. Ebenso ist es möglich, selbst ein solches Ereignis auszulösen.
Das klingt ein wenig kryptisch, deswegen ein konkretes Beispiel: In einem relativ alten Beitrag hatte ich erklärt, wie man dem DeCONZ „belauschen“ kann, was sehr nützlich sein kann.
Hier ein Beispiel, was dir angezeigt wird, wenn du dem Ereignis state_changed lauschst:
Alle Zustands-Änderungen werden dir live angezeigt.
Im oberen Bereich der Ereignisse kannst du auch selbst Ereignisse auslösen, was beispielsweise zum Testen von Automatisierungen nützlich sein kann. Diese Funktion nutze ich selbst aber nur sehr selten!
Entwicklerwerkzeuge: Statistik
Im Bereich Statistik der Entwicklerwerkzeuge werden dir alle verfügbaren Sensoren mit Statistiken angezeigt.
Diese Bereich kann sehr hilfreich sein, wenn mit einer Statistik etwas nicht stimmt und du die korrupten Daten korrigieren willst. Hierzu hatte ich vor einiger Zeit mal einen Beitrag geschrieben.
Korrupte Daten sind bei mir mittlerweile zum Glück zu einer absoluten Seltenheit geworden. Aber würde ich erneut solche falschen Daten feststellen, wäre der Bereich Statistik in den Entwicklerwerkzeugen die richtige Stelle, um diese falschen Daten zu korrigieren!
Entwicklerwerkzeuge: Assist
Der Bereich Assist in den Entwicklerwerkzeugen ist für die Steuerung mit Sprache (Voice Control) deines Smarthomes super hilfreich.
Hier kannst du einen Sprachbefehl geschrieben eingeben und überprüfen, wie Home Assistant hierauf reagieren würde.
Hier ein konkretes Beispiel: „Schalte das Licht im Wohnzimmer ein“ gibt folgendes Ergebnis:
Letztlich kannst du Sprachbefehle auf deren Funktion testen. Im konkreten Beispiel erkennt Home Assistant zum Beispiel die Area Wohnzimmer und das Lampen (light) geschaltet werden sollen.
Das vollständige Ergebnis sieht übrigens so aus:
intent: name: HassTurnOn slots: area: wohnzimmer domain: light details: area: name: area value: bc0fdcd491a34444bb0b7d768f7470e7 text: wohnzimmer domain: name: domain value: light text: '' targets: light.couch_z2m: matched: true light.retro_z2m: matched: true light.sessel_z2m: matched: true light.kamin_z2m: matched: true light.wled: matched: true match: true sentence_template: <schalten> (<licht>|<lichter>|<alle_lichter>) <area> <an> unmatched_slots: {} source: builtin
Konkret zeigt dieses Beispiel, dass 5 Lampen im Bereich Wohnzimmer eingeschaltet werden – perfekt!
Der Bereich Assist der Entwicklerwerkzeuge ist für dich nur interessant, wenn du dich bereits mit dem Assist von Home Assistant beschäftigst – hierzu werde ich in meinem nächsten Beitrag ausführlich berichten! 🙂
Ich hoffe, dass dieser kurze Überblick über die Möglichkeiten und Funktionen der Entwicklerwerkzeuge von Home Assistant für dich nützlich war! Habe ich etwas wichtiges vergessen? Schreib‘ es sehr gerne in die Kommentare, damit wir alle davon profitieren! 😉
Produktempfehlungen