Da ich mir immer wieder zusammensuche, wie ich States in Home Assistant abfrage, fasse ich das jetzt einfach mal zusammen. Ich beschränke mich auf mir bis jetzt ausreichende Möglichkeiten.
state vergleichen
Um einen state zu vergleichen oder zu prüfen, kann state_attr in Kombination mit if oder elif oder is_state genutzt werden.
state_attr:
{% if state_attr('media_player.receiver_yamaha', 'source') == 'Fire TV' %}
Fire TV
{% elif state_attr('media_player.receiver_yamaha', 'source') == 'Spotify' %}
{{ state_attr('media_player.receiver_yamaha', 'media_artist') }} - {{ state_attr('media_player.receiver_yamaha', 'media_title')}}
{% endif %}
is_state:
{% if is_state('sensor.offene_fenster', '0') %}
mdi:window-closed
{% else %}
mdi:window-open
{% endif %}
Kurzschreibweise:
{{ 'mdi:window-closed' if is_state('sensor.offene_fenster', '0') else 'mdi:window-open' }}
multiple Abfrage mit in:
{% if states('sensor.mein_toller_sensor') in ("unavailable", "unknown") %}
yada yada
{% endif %}
Was ich mir dahingehend ansehen sollte (beim flüchtigen Blick über die Templating-Doku):
select('is_state', 'on')
5 Antworten auf „Home Assistant: state (in Templates) abfragen“
Hi, wie ist die Zeichensetzung in („unavailable“, „unknown“) %} mit „Anführungszeichen“ oder ‚Hochkommma‘ ? Oder egal?
Sorry, hab deinen Kommentar gar nicht gesehen.
Ich glaube es ist relativ egal, nur keine deutschen An- und Abführungen.
Hi Michel. Danke für die Übersicht. Komme immer wieder mal auf diese Seite zurück und wollte mich dafür mal bedanken :)
Hi, und wie kombiniere ich eine ODER-Abfrage?
In meiner Sprache logisch etwa:
TRUE ist, wenn
is_state(’sensor.1′, ‚Status on‘)
ODER
is_state(’sensor.2′, ‚Status on‘)
ODER
(is_state(’sensor.1′, ‚Status on‘) UND is_state(’sensor.offene_fenster‘, ‚Status on‘)
Wie wäre der richtige Syntax für solche eine (zusammengefasste) Abfrage, die ich hier als Prüfung in einem Scheduler verwenden will.
Danke für einen Hinweis.
Hach, diese Template-Abfragen sind wie ein Knoblauch – viele Schichten, die man durchbohren muss! Und dann die Anführungszeichen-Diskussion: unavailable oder unknown? Manchmal fühlt es sich an, als würde man versuchen, einen Keks im Ofen zu finden – die Zeichen könnten schon sein, aber wo sind sie *wirklich*? Und was ist mit der ODER-Abfrage? Das ist wie beim Scherbenhaufen suchen: Hier mal ODER da mal. Vielleicht braucht man bald einen Template-Doktortitel, um das alles zu beherrschen. Aber hey, jeder hat seine kleinen Kämpfe mit den States – bis auf den, der immer schon alles wusste. 😉