Automation löst zu früh aus

Kurze Randbemerkung vorweg: Du solltest Auslöser, Bedingungen und/oder Aktionen mit Entitäten lösen, statt direkt mit den Devices, also nicht so …

… sonst kommt nämlich sowas bei heraus:

alias: Waschmaschine ist fertig
description: ""
triggers:
  - type: power
    device_id: 39c009795e646f479ceded0c223f6534
    entity_id: 29d469b6dbfac8bb72dc9b977296f8e1
    domain: sensor
    trigger: device
    below: 5
    for:
      hours: 0
      minutes: 5
      seconds: 0

Stattdessen nimmst Du eine passende Entität mit, in diesem Fall, einem numeric state

… weil das Ergebnis wesentlich leichter lesbar ist!

alias: Waschmaschine ist fertig
description: ""
triggers:
  - trigger: numeric_state
    entity_id:
      - sensor.inspelning_wama_power
    for:
      hours: 0
      minutes: 5
      seconds: 0
    below: 5

Weiterer Pluspunkt ist, dass, wenn Du ein Device austauscht (z.B. wegen eines Defektes), dann gibst Du dem Neuen einfach den gleichen Namen und alles passt wieder. :wink:

Nachtrag:

Jetzt zum eigentlichen Problem

Ich hatte das gleiche Problem wie Du. Ich habe für zwei meiner Steckdosen sporadisch Meldungen aufs Handy bekommen, obwohl sie zum betreffenden Zeitpunkt gar nicht in Betrieb waren. Bei mir lag das daran, dass die Steckdosen ab und an auf den Zustand unavailiable bzw. unknown gewechselt haben und dann ein Wechsel auf below: 5 stattfand. Für die Automation ist das ok so. Wie der Wert vorher war, interessiert sie nicht! Er war vorher anders und ist dann auf below: 5 gewechselt. Geh mal zur Automation und füge folgendes hinzu

+Bedingung hinzufügen → ... Andere Bedingungen → {} Template

In dem Wert für das Template gibst Du folgendes ein:

{{trigger.from_state.state != 'unavailiable'}}

Dann fügst Du ein weiteres Template ein mit folgendem Wert:

{{trigger.from_state.state != 'unknown'}}

Im YAML sieht das dann so aus:

conditions:
  - condition: template
    value_template: "{{trigger.from_state.state != 'unavailiable'}}"
  - condition: template
    value_template: "{{trigger.from_state.state != 'unknown'}}"

Diese beiden Bedingungen fragen ab, ob der Wert nicht unavailiable und nicht unknown war. Wenn eines von beiden zutrifft, wird die Automation beendet. :wink:

Weitere Details findest Du dort:

3 „Gefällt mir“