Automatisation multiple avec notification et action

Ok je comprend mieux.

Voici ce que je propose :

Tu crée un interrupteur virtuel nommé « Défaillance pompe ». (Entrée > Interrupteur)

Ensuite pour l’automatisation (en mode redémarrage pour gérer le timeout si tu répond pas à la notif):

  • Déclencheur 1 : puissance supérieur à 230W pendant plus de 1 min
  • Déclencheur 2 : réponse Oui à la notif
  • Déclencheur 3 : réponse Non à la notif
  • Déclencheur 4 : Prise reste ON pendant plus de 6 min ( = pas de problème)
  • Si Déclencheur 1
    • Envoi de la notif « Arrêter la pompe ? » Oui/Non
    • Attendre 5min (doit etre inferieur au temps du Déclencheur 4)
    • Eteindre Prise (c’est quand pas de reponse à la notif)
    • Allumer Défaillance pompe
  • Si Déclencheur 2 ET Défaillance pompe = OFF
    • Allumer Défaillance pompe
    • Eteindre Prise
    • Attendre 30 sec
    • Allumer Prise
  • Si Déclencheur 2 ET Défaillance pompe = ON (2eme notif avec « Oui »)
    • Eteindre Prise
  • Si Déclencheur 3
    • Eteindre Défaillance pompe
    • Attendre que Prise passe sous les 230W pendant maximum 30min
    • Si Prise > 230W (si pompe encore en marche apres 30min)
      • Envoi de la notif « Arrêter la pompe ? » Oui/Non
  • Si Déclencheur 4 (Si pas de problème)
    • Eteindre Défaillance pompe

J’ai récupéré tes device_id et entity_id pour te faire l’automatisation, elle devrait fonctionner sans rien changer, et tu peux la basculer dans l’éditeur visuel :

alias: Contrôle Pompe
description: "Alerte et gestion des défaillance de la pompe"
trigger:
  - type: power
    platform: device
    device_id: 7f80ac9af83ca1752df31423e14e10d1
    entity_id: 65801d1b8a6313156ff1f33ee3e802d4
    domain: sensor
    above: 230
    for:
      hours: 0
      minutes: 1
      seconds: 0
    id: notif
  - platform: event
    event_type: mobile_app_notification_action
    event_data:
      action: stop_pompe_oui
    id: reponse-oui
  - platform: event
    event_type: mobile_app_notification_action
    event_data:
      action: stop_pompe_non
    id: reponse-non
  - platform: device
    type: turned_on
    device_id: 7f80ac9af83ca1752df31423e14e10d1
    entity_id: 648ae1ccbcc4788bf89ed1b0c07dd0df
    domain: switch
    for:
      hours: 0
      minutes: 6
      seconds: 0
    id: plus_de_defaillance
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - notif
        sequence:
          - action: notify.mobile_app_iphone_yoyo
            metadata: {}
            data:
              message: Pompe en fonction depuis plus de 1min
              title: Arrêter la pompe ?
              data:
                actions:
                  - action: stop_pompe_oui
                    title: Oui
                  - action: stop_pompe_non
                    title: Non
          - delay:
              hours: 0
              minutes: 5
              seconds: 0
              milliseconds: 0
          - type: turn_off
            device_id: 7f80ac9af83ca1752df31423e14e10d1
            entity_id: 648ae1ccbcc4788bf89ed1b0c07dd0df
            domain: switch
          - action: input_boolean.turn_on
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.defaillance_pompe
      - conditions:
          - condition: trigger
            id:
              - reponse-oui
          - condition: state
            entity_id: input_boolean.defaillance_pompe
            state: "off"
        sequence:
          - type: turn_off
            device_id: 7f80ac9af83ca1752df31423e14e10d1
            entity_id: 648ae1ccbcc4788bf89ed1b0c07dd0df
            domain: switch
          - delay:
              hours: 0
              minutes: 1
              seconds: 0
              milliseconds: 0
          - type: turn_on
            device_id: 7f80ac9af83ca1752df31423e14e10d1
            entity_id: 648ae1ccbcc4788bf89ed1b0c07dd0df
            domain: switch
          - action: input_boolean.turn_on
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.defaillance_pompe
      - conditions:
          - condition: trigger
            id:
              - reponse-oui
          - condition: state
            entity_id: input_boolean.defaillance_pompe
            state: "on"
        sequence:
          - type: turn_off
            device_id: 7f80ac9af83ca1752df31423e14e10d1
            entity_id: 648ae1ccbcc4788bf89ed1b0c07dd0df
            domain: switch
      - conditions:
          - condition: trigger
            id:
              - reponse-non
        sequence:
          - action: input_boolean.turn_off
            target:
              entity_id:
                - input_boolean.defaillance_pompe
            data: {}
          - wait_for_trigger:
              - type: power
                platform: device
                device_id: 7f80ac9af83ca1752df31423e14e10d1
                entity_id: 65801d1b8a6313156ff1f33ee3e802d4
                domain: sensor
                below: 230
                for:
                  hours: 0
                  minutes: 0
                  seconds: 0
            timeout:
              hours: 0
              minutes: 30
              seconds: 0
              milliseconds: 0
          - if:
              - type: is_power
                condition: device
                device_id: 7f80ac9af83ca1752df31423e14e10d1
                entity_id: 65801d1b8a6313156ff1f33ee3e802d4
                domain: sensor
                below: 230
            then:
              - action: notify.mobile_app_iphone_yoyo
                metadata: {}
                data:
                  message: Pompe en fonction depuis plus de 1min
                  title: Arrêter la pompe ?
                  data:
                    actions:
                      - action: stop_pompe_oui
                        title: Oui
                      - action: stop_pompe_non
                        title: Non
      - conditions:
          - condition: trigger
            id:
              - plus_de_defaillance
        sequence:
          - action: input_boolean.turn_off
            target:
              entity_id:
                - input_boolean.defaillance_pompe
            data: {}
mode: restart
1 « J'aime »