Template - Welcher Lichter sind eingeschaltet - Welche Fenster stehen offen

Eine Sammlung von Home Assistant Templates.
Bitte nur fertige Templates posten, ergänzt um eine Beschreibung und ggf. Screenshots.


Antworten
Benutzeravatar
Osorkon
Administrator
Beiträge: 1950
Registriert: Sa 17. Jul 2021, 16:53
2
Wohnort: Langenargen
Has thanked: 61 times
Been thanked: 529 times
Kontaktdaten:

Template - Welcher Lichter sind eingeschaltet - Welche Fenster stehen offen

Beitrag von Osorkon »

Wird mal wieder Zeit für Template. :D :D

Dieses Template zählt die Lichter, welche eingeschaltet sind.
Wenn mehr als ein Licht eingeschaltet ist, gibt das Template die Namen der Lichter die eingeschaltet sind.
Sonst "Alle Lichter sind ausgeschaltet"

Kann man für ein Karte, eine Text oder TTS Benachrichtigung verwenden.

Code: Alles auswählen

{% set lichter_liste = states.light |selectattr('state','eq','on')
| map(attribute='name')
| list
| join(', ') %}
{% set lichter_anzahl = states.light |selectattr('state','eq','on')
| list
| count %}
{% if lichter_anzahl == 0 %}
   Alle Lichter sind ausgeschaltet
{% else %}
  Folgende Lichter sind noch an:
{{ lichter_liste }}
{% endif %}

Und hier der kleinen Bruder für offen stehende Fenster. :)

Code: Alles auswählen

{% set fenster_liste = states.binary_sensor
| selectattr('state','eq','on')
| selectattr('attributes.device_class','defined')
| selectattr('attributes.device_class','eq', 'window')
| map(attribute='name')
| list
| join(', ') %}

{% set fenster_anzahl = states.binary_sensor
| selectattr('state','eq','on')
| selectattr('attributes.device_class','defined')
| selectattr('attributes.device_class','eq', 'window')
| list
| count %}
{% if fenster_anzahl == 0 %}
  Alle Fenster sind geschlossen
{% else %}
  Folgende Fenster sind noch geöffnet:
{{ fenster_liste }}
{% endif %}

Die Templates lassen sich natürlich auch für weiter Domain wie Switches, covers, etc verwenden.
Bzw. für andere device classen, wie z.B. Türen.

Gruß
Osorkon

Einer muss ja für Ordnung sorgen. :D
TheBermud
Beiträge: 20
Registriert: Mo 18. Mär 2024, 20:22
Been thanked: 1 time

Re: Template - Welcher Lichter sind eingeschaltet - Welche Fenster stehen offen

Beitrag von TheBermud »

Danke für das Template.

Code: Alles auswählen

|rejectattr("attributes.entity_id","defined")

wäre glaube ich eine gute Ergänzung, damit die Lichter in Gruppen nicht mitgezählt werden. Finde, dass sonst das Ergebnis verfälscht ist.

Ich würde die Liste gerne alphabetisch sortieren, hast du dazu eine Idee?

Benutzeravatar
Osorkon
Administrator
Beiträge: 1950
Registriert: Sa 17. Jul 2021, 16:53
2
Wohnort: Langenargen
Has thanked: 61 times
Been thanked: 529 times
Kontaktdaten:

Re: Template - Welcher Lichter sind eingeschaltet - Welche Fenster stehen offen

Beitrag von Osorkon »

Nach Namen sortiert:

Code: Alles auswählen

| sort(attribute='name')

Code: Alles auswählen

{% set lichter_liste = states.light | selectattr('state','eq','on')
| sort(attribute='name')
| map(attribute='name') 
| join(', ') %}
{% set lichter_anzahl = states.light |selectattr('state','eq','on')
| list
| count %}
{% if lichter_anzahl == 0 %}
   Alle Lichter sind ausgeschaltet
{% else %}
  Folgende Lichter sind noch an:
{{ lichter_liste }}
{% endif %}

Wie man die Lichter die keinem Bereich zugeordnet sind aussortiert, müsste ich mir mal genauer anschauen.

Gruß
Osorkon

Einer muss ja für Ordnung sorgen. :D
TheBermud
Beiträge: 20
Registriert: Mo 18. Mär 2024, 20:22
Been thanked: 1 time

Re: Template - Welcher Lichter sind eingeschaltet - Welche Fenster stehen offen

Beitrag von TheBermud »

Vielen Dank, funktioniert super.

Ich glaube ich habe mich oben falsch ausgedrückt. Mit dem Zusatz werden die Lichtergruppen nicht mit in die Liste aufgenommen, die Lichter in den Gruppen natürlich schon :)

Antworten