Je t’avoues que je l’ai écrit rapidement et ne l’est pas du tout testé…
Je suis au boulot, donc ça attendra ce soir pour ma part.
Je t’avoues que je l’ai écrit rapidement et ne l’est pas du tout testé…
Je suis au boulot, donc ça attendra ce soir pour ma part.
Effectivement, j’étais parti sur le fait d’informer que l’execution manuelle ne marche pas dans le cas de l’utilisation des données contenu dans le déclencheur
très bien pas de problème je vais attendre je suis moi même au boulot
Après une pause café passé sur le forum (car les collègues sont en vacances… ) :
#DEBUG
- service: persistent_notification.create
data:
message: "L'entité **{{trigger.from_state.name}}** *({{trigger.from_state.entity_id}})* vient de passer de : \n '{{trigger.from_state.state}}' \n à \n '{{trigger.to_state.state}}'"
title: "DEBUG Automatisation"
notification_id: "{{ (range(1, 9999)|random) }}"
#DEBUG
il y avait un ‹ trigger.from_state .state. name › de trop , mais sans rapport avec ton erreur.
J’ai pris ton automatisation, et ajouter donc le débogage :
- id: 30f4e5a8-df44-11ea-87d0-0242ac130003
alias: Alerte quand pluie attendue
description: Envoie des notifications quand la pluie est attendue dans l'heure
trigger:
- platform: state
entity_id: sensor.courlay_next_rain
action:
#DEBUG
- service: persistent_notification.create
data:
message: "L'entité **{{trigger.from_state.name}}** *({{trigger.from_state.entity_id}})* vient de passer de : \n '{{trigger.from_state.state}}' \n à \n '{{trigger.to_state.state}}'"
title: "DEBUG Automatisation"
notification_id: "{{ (range(1, 9999)|random) }}"
#DEBUG
- choose:
- conditions:
- condition: template
value_template: '{{ trigger.to_state.state != ''unknown'' }}'
- condition: state
entity_id: input_boolean.stop_rain_notification
state: 'off'
sequence:
#DEBUG
- service: persistent_notification.create
data:
message: "Déclencheur différent de 'unknown'"
title: "DEBUG Automatisation"
notification_id: "{{ (range(1, 9999)|random) }}"
#DEBUG
- choose:
- conditions:
- condition: template
value_template: '{{ trigger.to_state.state != trigger.from_state.state
}}'
sequence:
#DEBUG
- service: persistent_notification.create
data:
message: "Déclencheur différent de l'état précédent, la pluie arrive !"
title: "DEBUG Automatisation"
notification_id: "{{ (range(1, 9999)|random) }}"
#DEBUG
- service: notify.telegram_groupe
data:
message: 'La pluie est attendue à {{ as_timestamp(states(''sensor.courlay_next_rain''))
| timestamp_custom(''%H:%M'', True) }}.
'
- choose:
- conditions:
- condition: template
value_template: '{{ state_attr(''ssensor.courlay_next_rain'', ''1_hour_forecast'')[''0
min''] != ''Temps sec'' }}'
sequence:
#DEBUG
- service: persistent_notification.create
data:
message: "La pluie est là !"
title: "DEBUG Automatisation"
notification_id: "{{ (range(1, 9999)|random) }}"
#DEBUG
- service: input_boolean.turn_on
data:
entity_id: input_boolean.stop_rain_notification
- conditions:
- condition: template
value_template: '{{ trigger.to_state.state == ''unknown'' }}'
- condition: template
value_template: '{{ trigger.from_state.state != ''unknown'' }}'
sequence:
#DEBUG
- service: persistent_notification.create
data:
message: "Plus de pluie dans l'heure..."
title: "DEBUG Automatisation"
notification_id: "{{ (range(1, 9999)|random) }}"
#DEBUG
- service: notify.telegram_groupe
data:
message: Plus de pluie attendue dans la prochaine heure.
- service: input_boolean.turn_off
data:
entity_id: input_boolean.stop_rain_notification
mode: single
Je te confirme que ce code fonctionne car je l’ai testé
je n’ai rien modifié à la logique, du coup, une question me vient :
input_boolean.stop_rain_notification
?J’aimerai bien trouver un moyen de le faire sans le input_boolen.
Et pourquoi ne pas utiliser les scènes ?
Une utilisation ici.
Et conditionner sur le fait de son existence ?
ah non j’avais pas fait le input boolean
par contre j’ai un autre problème lol
je pense a voir trouvé j’ai changer le fuseau horaire
Tu veux dire que tu l’avais mal renseigné à l’installation ?
si je pose la question, c’est pour m’assurer que le code est bon
Car c’est la fonction as_timestamp() qui renvoi l’heure locale (le fait de mettre True
en paramètre)
oui j’avais laisser UTC, mais la il pleut plus chez moi c’est chiant alors plus de notification lol
Remonte plus haut dans le fil pour déboguer, @oncleben31 à mit comment il faisait (et c’est ce qu’il faut faire )
c’est bon ça marche
par contre c’est possible de rajouter si c’est une pluie faible ou autre pour avoir un peux plus de détails?
Hello. Je re ouvre le fil car je cherche un blueprint (si pluie dans dans l’heure ou 30 mn) avec évidemment l’api Meteo france, pour y associer une scene ?!
des pistes ?
bonjour , ce script fonctionne t’il toujours car je le copie colle dans mon éditeur Yaml et que je change avec mes entités. j 'ai une erreur .
Message malformed: expected dictionary
ca vous dit quelquechose ?
merci à tous
Perso je ne me suis pas compliqué la vie, j’ai créé un template sensor (on/off) qui regade si le premier attribut forecast de mon integration meteo france contient le mot « rain », et j’ai créé une automatisation qui m’alerte quand il passe a on, ca m’evite de gérer si j’ai deja été notifié ou pas
Et oui je prefere HA en anglais
platform: template
sensors:
rain_next_hour:
friendly_name: "Rain Next Hour"
value_template: >-
{% if 'rain' in state_attr('weather.ma_ville_top_secrete', 'forecast')[0].condition %}
on
{% else %}
off
{% endif %}
en fait tout fonctionne nickel , j’avait fait une boulette merci beaucoup!
serait-il possible au lieu de notify.notify d’utiliser les notifications iOS ? j’ai essayé mais ca ne fonctionne pas . il faut sans doute changer le format du message à transmettre .
Merci pour cette automatisation. Après installation, et avec les jours de pluie de ce milieu de semaine, je suis spammé sur mon Telegram.
J’ai loupé quelque chose ou c’est chez tout le monde comme ça ?
C’est pour tout le monde pareil