Moin zusammen,
ich nutze die HACS Integration Battery Notes. Diese erstellt Entitäten für die entsprechenden Geräte mit dem Zusatz “battery_plus_low” im Namen, Typ Boolean. Also wenn die Batterie nicht mehr gut ist, wird die Entität eingeschaltet, sonst ist sie ausgeschaltet.
Ich möchte nun einen (oder zwei) Sensor(en) erstellen, der zum einen diese Entitäten zählt (bei Status on) und wenn diese dann größer 0 dann soll noch ein “Batterie-Warnung” Helfer eingeschaltet werden. Bei 0 soll der Helfer ausgeschaltet sein.
Ich möchte nicht erst einen Gruppen-Helfer erstellen, in dem ich all diese Entitäten manuell hinzufügen muss. Das wäre ja eine potentielle Fehlerquelle, wenn ich neue Geräte hinzufüge (Ich könnte vergessen, diese Gruppe zu erweitern).
Ist das möglich? Kann ich nach diesem Zusatz durch alle Entitäten suchen? Wenn ja, wie? Ich habe schon ein wenig mit selectattr gespielt, aber die Ergebnisse waren alle falsch.
So habe ich angefangen, Ergebnis = [ ]:
{% set entities = states.sensor
| selectattr('entity_id', 'search', 'battery_low')
| map(attribute = 'entity_id') | list %}
Es wird wohl nicht an der richtigen Stelle gesucht…
Vielleicht kann mich jemand unterstützen! Danke schonmal!
Vg
sven
Dass deine Entitäten “battery_plus_low” im Namen haben, du aber nach “battery_low” suchst, ist gewollt?
Ich würde (ungetestet!) mal hiermit weitermachen:
{% set entities = states.sensor
| selectattr('entity_id', 'search', 'battery_plus_low')
| select('is_state', 'on') | list | count %}
Besten Dank für den Hinweis. Ich habe das tatsächlich nur falsch übertragen. Battery_Plus_Low hab ich bei mir auch stehen.
Dennoch, obwohl drei Entitäten on sind, kommt als Anzahl 0 raus und ohne count wieder nur
Wenn ich nach battery_plus_low bei den zuständen filter bekomme ich alle (unknown, off und on) angezeigt.
Was machst du denn mit dem Code? So wie es das steht, ist ja nur in ‘entities’ die Zahl drin. Wie gibst du das aus? Zeig mal deinen ganzen Code.
So weit bin ich noch nicht. Ich teste noch im Template-Editor der Entwicklerwerkzeuge. Und da ich dort noch keine korrekte Anzeige habe, komme ich nicht weiter.
Zum testen gebe ich ich entities via {{ entities }} im Editor aus. In deiner Variante kommt eine 0 dabei raus, es müsste eine 3 sein. Ohne Count sind es die [ ].
Das Ziel ist es, dass ich im Dashboard einen Batterie-Button habe, der einen Badge bekommen soll, wenn der Helfer Batterie-Warnung > 0 (oder true, wenn es einfacher ist) ist. Zusätzlich soll in dem Badge noch die Zahl der entsprechend leeren Batterien stehen.
ich hab die entitäten bei mir nicht, hab das aber gerade mal mit fenstersensoren bei mir probiert.
Sicher dass deine Sensoren “sensor” sind? Und nicht “binary _sensor”?
Bei mir geht sowas:
{% set entities = states.binary_sensor
| selectattr('entity_id', 'search', 'battery_plus_low')
| selectattr('entity_id', 'is_state', 'on')
| list | count %}
{{ entities }}
Puh…der binary_sensor war es. Oh man…das habe ich total übersehen.
Besten Dank! Nun kann ich weiter basteln 