Ton trigger c’est quand la zone maison passe a zero.
Après tu envois ta notification avec les actions possibles.
En fonction de ce qui est renvoyé tu fais un multioptions avec option 1 : j’active l’alarme ; option 2 : je ne fait rien ; option 3 : j’ai pas répondu.
alias: Test notification Apps avec bouton
description: ""
trigger:
- platform: numeric_state
entity_id:
- zone.home
for:
hours: 0
minutes: 0
seconds: 5
below: 1
condition: []
action:
- action: notify.mobile_app_oneplus
data:
title: Notification test
message: |
Ceci est un test
data:
actions:
- action: Alarme
title: Activer l'alarme
- action: Ne pas activer
title: Ne pas activer l'alarme
- action: Nothing
title: Pas de réponses
enabled: true
mode: single
@Idaho947 par contre, je ne trouve pas comment récupérer la réponse et la traiter.
J’imagine que c’est dans cette partie, mais je ne vois pas comment l’adapter.
# inside a automation actions or script sequence
- alias: "Set up variables for the actions"
variables:
# Including an id in the action allows us to identify this script run
# and not accidentally trigger for other notification actions
action_open: "{{ 'OPEN_' ~ context.id }}"
action_close: "{{ 'CLOSE_' ~ context.id }}"
- alias: "Ask to close or open the blinds"
action: notify.mobile_app_<your_device>
data:
message: "The blinds are half-open. Do you want to adjust this?"
data:
actions:
- action: "{{ action_open }}"
title: Open
- action: "{{ action_close }}"
title: Close
- alias: "Wait for a response"
wait_for_trigger:
- platform: event
event_type: mobile_app_notification_action
event_data:
# waiting for the specific action avoids accidentally continuing
# for another script/automation's notification action
action: "{{ action_open }}"
- platform: event
event_type: mobile_app_notification_action
event_data:
action: "{{ action_close }}"
- alias: "Perform the action"
choose:
- conditions: "{{ wait.trigger.event.data.action == action_open }}"
sequence:
- action: cover.open_cover
target:
entity_id: cover.some_cover
- conditions: "{{ wait.trigger.event.data.action == action_close }}"
sequence:
- action: cover.close_cover
target:
entity_id: cover.some_cover
La réponse envoyée est a mettre dans « {{ wait.trigger.event.data.action == }} »
Ta notification sur portable lorsqu’elle est séléctionnée renvoi une « action » qui correspond à ce que tu as mis dans la parties :
Par exemple si tu cliques sur « Activer l’alarme » cela renvera la data action « Alarme ».
Donc tu attends le trigger .event.data.action « Alarme » pour déclacher l’option de la mise en action de l’alarme.
Attention il y a une subtilité pour géré la non réponse. Tu n’a pas a faire de paragraphe action mais utiliser {{ wait.trigger is none }} et bien activer la coche « »
comme je te le dis plus haut c’est un bloc de construction multioption. Chaque option est déclanchée par un template.
Mais tu dois aussi mettre une action attente de trigger avant pour pouvoir recevoir le data.action correspondant.
Triggered by the event 'telegram_command' at August 26, 2024 at 3:16:52 PM
Perform action 'Notifications: Send a notification via mobile_app_oneplus'
Wait for 2 triggers
4 seconds later
Choose: No action executed
Finished at August 26, 2024 at 3:16:56 PM (runtime: 4.04 seconds)