Aide automatisation avec tempo en parallele

bonjour à tous et de bonne fêtes à vous!

j’essaye de faire une automatisation pour mon fils, comme il le dit si bien:
Papa j’ai 7 ans maintenant je suis assez grand pour rentrer tout seul à la maison!

oui mais:
on a du bol:
que du trottoir de l’école à chez nous,
des voisines maman qui peuvent l’accompagner,
et on est à 5min de l’école à pied!

mais:
je ne veux pas lui laisser un jeux de clé, (il perd en moyenne 2 crayons de couleurs par semaine…)

donc je lui ai pris un Itag (merci à @WarC0zes et son post )

je suis équipé d’une alarme/caméra netatmo
j’ai fait une automatisation comme cela:

alias: eliott-bouton
description: ""
triggers:
  - trigger: state
    entity_id:
      - device_tracker.itag_bermuda_tracker
    from: not_home
    to: home
conditions: []
actions:
  - action: notify.mobile_app_nspannel_entree
    metadata: {}
    data:
      message: TTS
      data:
        ttl: 0
        priority: high
        media_stream: alarm_stream_max
        tts_text: Bonjour Eliott, bienvenu à la maison, tu peux ouvrir le garage.
  - action: script.test_bouton_white
    metadata: {}
    data: {}
  - delay:
      hours: 0
      minutes: 0
      seconds: 20
      milliseconds: 0
  - action: tts.cloud_say
    metadata: {}
    data:
      cache: false
      entity_id: media_player.atelier
      message: >-
        Bonjour Eliott, tu peux entrer, l'alarme est désactivée pour 5 min.
        N'oublie pas de taper ton code et de fermer la porte du garage
  - action: script.test_bouton_white
    metadata: {}
    data: {}
mode: single

et le script:

alias: test bouton white
sequence:
  - wait_for_trigger:
      - trigger: state
        entity_id:
          - binary_sensor.esp_entree_white_itag_button
        from: null
        to: "on"
  - if:
      - condition: state
        entity_id: binary_sensor.capteur_garage_garage_ouvert
        state: "off"
    then:
      - action: netatmo.set_persons_home
        metadata: {}
        data:
          persons: Eliott
        target:
          device_id:
            - pouet!
            - re-pouet
            - re-re-pouet!
            - re-re-re-pouet!
            - re-re-re-re-pouet!
      - device_id: lalala
        domain: cover
        entity_id: re-lalala
        type: open
    else:
      - device_id: lalala
        domain: cover
        entity_id: re-lalala
        type: close
description: ""

tout fonctionne bien mais:
Je veux qu’une fois que la personne soit ajoutée aux personnes présente de netatmo,
je puisse créer un timestamp, enfin un moment à partir duquel décompter 5 min.
mais en simultané, si le gamin tape son code le timestamp s’arrête.
(en gros après ouverture de la porte du garage, la tempo s’active mais si le gamin tape son code la tempo s’arrête sinon elle supprime le gamin des personnes présentes.)
et là je bloque, comme faire une automatisation en parallèle? (ou script je ne suis pas raciste)

je ne peux pas fair un wait 5 min car comment l’interrompre si le code est tapé?

pour info, le code est tapé sur un NSpanel-pro avec ce code, donc je peux récupérer l’état des différents scripts.

un grand merci de m’avoir lu, et bonnes fêtes à tous!

1 « J'aime »

hello,
tu as dans les actions le moyen de lancer des actions en parallèle

alors oui, merci beaucoup, mais je n’ai pas reussi à le comprendre/paramétrer
tu aurais un exemple stp?

merci! :innocent:

voici un exemple ou je l’utilise

en développant


et le code yaml

alias: lock and go
sequence:
  - parallel:
      - sequence:
          - if:
              - condition: device
                device_id: c117ec67d0867849df4ed1fb1b86965c
                domain: lock
                entity_id: 3d0317fcbf4c0d6084f3fb765420e5ed
                type: is_locked
            then:
              - action: lock.open
                metadata: {}
                data: {}
                target:
                  device_id: c117ec67d0867849df4ed1fb1b86965c
          - delay:
              hours: 0
              minutes: 0
              seconds: 15
              milliseconds: 0
          - action: lock.lock
            metadata: {}
            data: {}
            target:
              device_id: c117ec67d0867849df4ed1fb1b86965c
      - if:
          - condition: sun
            after: sunset
            before: sunrise
        then:
          - action: light.turn_on
            metadata: {}
            data:
              transition: 0
              brightness_pct: 100
            target:
              entity_id: light.porche
          - delay:
              hours: 0
              minutes: 0
              seconds: 20
              milliseconds: 0
          - action: light.turn_off
            metadata: {}
            data:
              transition: 2
            target:
              entity_id: light.porche
mode: restart

(c’est un script et pas une automation)

merci! je vais regarder ça demain

bonne soirée!

1 « J'aime »