Help sur "for" dans un trigger d'automatisation

Bonjour,
Je bloque depuis plusieurs jours sur le trigger d’une automatisation.
Le for: « 00;00:30 » ne fonctionne pas.
Je souhaite que l’automatisation ne se déclenche que si l’une des conditions est maintenu pendant 30 secondes ou plus.
J’ai cherché du coté de l’indentation mais rien n’y fait …

- id: '202124051933'
  alias: G2_SOS
  description: ''
  trigger:
  - platform: template
    value_template: "{% if (is_state('sensor.automower_state_status', '14'))
      or (is_state('sensor.automower_state_status', '24'))
      or (is_state('sensor.automower_state_status', '30'))
      or (is_state('sensor.automower_state_status', '1038'))
    %}true{% else %}false{% endif %}"
    for: "00:00:30" 
  condition: []
  action:
  - service: notify.telegram
    data:
-...
 mode: single

Merci

Salut…

A lire la doc, il faut pas rajouter un truc du genre

    for: "00:00:30"
    on: true

Histoire de bien indiquer dans quelles conditions d’état les 30sec sont à prendre en compte
?

1 « J'aime »

Je ne suis pas sûr que la méthode que tu as choisi corresponde à ton besoin.

Avec ton code, ce n’est pas :

  • si le capteur est à l’état X pendant 30 secondes
  • ou si le capteur est à l’état Y pendant 30 secondes
  • ou si le capteur est à l’état Z pendant 30 secondes

mais plutôt :

  • si pendant 30 secondes, le capteur est à l’état X ou Y ou Z

Dans le premier cas, si l’état du capteur passe de X à Y, la durée est remise à zéro alors que dans le second cas, la durée n’est pas remise à zéro sur le passage de X à Y (ou Z)

Donc, pour reprendre tes dires :

je partirais plutôt sur des déclencheurs d’état et non un modèle :

automation:
  trigger:
    - platform: state
      entity_id: sensor.automower_state_status
      to: "14"
      for: 
        seconds: "30"
    - platform: state
      entity_id: sensor.automower_state_status
      to: "24"
      for: 
        seconds: "30"
    - platform: state
      entity_id: sensor.automower_state_status
      to: "30"
      for: 
        seconds: "30"
  condition: []
  action:
  - service: notify.telegram
    data:
      title: "*Titre*"
      message: "Lorem ipsum"

Je pense que ça rejoint le commentaire de @Pulpy-Luke