Automations - remonter (en notification) le nom du déclencheur, ou d'une valeur?

Si tu regarde bien… Toi tu veux le friendly_name… Il est dans le message, suffit d’aller le chercher… :innocent:

Je verrais bien un truc du genre :

{{trigger.from_state.friendly_name}} 

Alors rien ne s’affiche avec ta proposition.

J’ai aussi testé {{trigger.entity_id.friendly_name}} mais même chose, rien ne s’affiche à la place de cette variable.

Grace à toi, j’ai suivi ton idée, cette piste en cherchant sur internet et j’ai trouvé ceci :

{{ states[trigger.entity_id.split(".")[0]][ trigger.entity_id.split(".")[1]].name }}

Ca vient d’ici, et ça fonctionne !

Ca c’est pour l’ouverture de mes portes. Maintenant je regarde pour le reste (alerte température sous 10°, etc).
Je reviens ici si besoin ou pour partager les soluces et codes définitifs.

Merci, encore :slight_smile:

Depuis tout à l’heure j’essaie pour m’indiquer le niveau de batteri restante de tous mes capteurs avec pile.
Pour simplifier, j’ai duppliqué l’automation pour ne laisser qu’un seul capteur / déclencheur.

alias: Capteurs - Alerte batterie faible - 0% (Dupliquer)
description: ''
trigger:
  - platform: numeric_state
    entity_id: sensor.xiaomi_entree_battery_level
    below: '30'
condition: []
action:
  - service: notify.notify
    data:
      message: 'La pile d''un des capteurs est vide - {{trigger.to_state}}'
mode: single

Avec {{trigger.to_state}} (qui est pourtant dans la liste des états numérique) la notif arrive mais vide.

J’ai essayé avec trigger.below mais ça indique le seuil que j’ai configuré, pas la valeur de la pile.

Je ne vois aucune autre variable pouvant répondre à ce besoin. Mais j’imagine que ça vient de moi… Mais je vois pas :expressionless:

Auriez-vous une idée ?

Un peu lourd comme code avec des splits…

Ci dessous le code (qui fonctionne :sweat_smile:) :

 {{state_attr(trigger.entity_id, 'friendly_name') }}

Et pourquoi pas simplement :

{{states(trigger.entity_id) }}

?

Parfait, ça remonte le % de batterie restante, merci !

Par contre ton code pour remonter le friendly name ne fonctionne pas.

Chez moi ceci fonctionne :

alias: Capteurs - Alerte batterie faible - 0% (Dupliquer)
description: ''
trigger:
  - platform: numeric_state
    entity_id: sensor.xiaomi_entree_battery_level
    below: '3'
condition: []
action:
  - service: notify.notify
    data:
      message: >-
        La pile de {{ states[trigger.entity_id.split(".")[0]][
        trigger.entity_id.split(".")[1]].name }} est à
        {{states(trigger.entity_id) }} %
mode: single

J’ai essayé {{state_attr(trigger.entity_id, ‹ friendly_name ›) }} mais la zone est vide dans la notif.

… Chez toi :wink:

alias: Notification de mise au point
description: >
  Permet d'afficher une notification pour la mise au point lors de l'utilisation
  du déclencheur(trigger)
trigger:
  - platform: state
    entity_id: input_boolean.hacf
  - platform: numeric_state
    entity_id: input_number.hacf
    above: '10'
condition: []
action:
  - service: persistent_notification.create
    data:
      message: |
        {% for list in trigger %}
          {{list}} : {{trigger[list]}}
        {% endfor %}
        ❤️❤️
        Nom: {{state_attr(trigger.entity_id, 'friendly_name') }}
      title: |
        Le Déclencheur de l'automatisation
      notification_id: '{{ (range(1, 9999)|random) }}'
mode: single

Il y a du y avoir un problème de copier coller, car maintenant ça fonctionne.

Ce que j’ai mis hier sur le forum n’est pas écrit ‹ friendly_name › mais ‹ friendly_name ›

Good. Merci !

J’ai 2 nouvelles questions.
Dans mon automatisation pour les niveaux de pile, j’ai ajouté un déclencheur pour chaque capteur qui a une pile, pour chaque entité *_battery_level

1 - Est-il possible de remplacer ça par une variable, équivalente à *_battery_level ? Pour simplifier l’automation, et surtout prendre en compte chaque futur module qui sera ajouté au système, sans risquer d’oublier de mettre à jour l’automation ?

2 - actuellement, la règle de mon automation se déclenche sous 30% (below) (de batterie). Quand je modifie à la main la valeur via OUTILS DE DEV > ETATS), je reçois la première notif (29% par exemple) mais plus rien quand je mets 28 ou 15% par exemple.
Est-ce normal ? Une fois passé sous le seuil, ça n’est plus pris en compte ?

Même chose pour mon automatisation qui m’alerte si un capteur passe sous 10°c, si ça continue de baisser, je ne reçois plus de nouvelle alerte.

La documentation indique :

It will only fire again, once it has left the defined range and enters it again.

Ce qui se traduit par :

le déclenchement interviendra seulement lorsque la valeur sortira puis reviendra dans la plage.

Donc oui, c’est normal…

Alerter sur Batterie Faible - #12 par papoo

Merci d’utiliser au maximum la recherche :mag_right:

J’ai créé une notification lorsque la consommation d’eau journalière dépasse une certaine valeur mais où devrait-elle apparaître ?

- alias: "Alerte conso eau"
  description: ''
  trigger:
   - platform: numeric_state
     entity_id: sensor.conso_eau_jour
     below: '5'
  condition: []
  action:
  - service: notify.notify
    data:
      message: 'Alerte conso eau - {{trigger.to_state}}'
  mode: single

Je n’utilise pas le service notify.notify mais je viens de tester et la notification est apparue sur mon téléphone (notify.telephone_clemalex).

Donc je dirais que la notification apparaît sur toutes les entités du domaine notify.

Dans le code j’ai remplacé notify.notify par notify.notify.mobile_app_iphone_de_yves mais je n’ai toujours pas de notification (autorisées sur mon téléphone) et la valeur de sensor.conso_eau_jour est à 112

Il y a un notify. de trop…

C’est dans le message que j’ai fait une erreur :angry: dans le le code c’est bien :

  • service: notify.mobile_app_iphone_de_yves

Pour tester le service notify voici le code de mon fichier scripts.yaml

test_notification:
  alias: Test notification
  sequence:
    - service: notify.mobile_app_iphone_de_yves
      data:
        title: "Test notification"
        data:
          push:
            badge: 25

Ensuite dans une carte entities

type: entities
entities:
  - entity: script.test_notification

Lorsque je clique sur Run il ne se passe rien ?

Tu utilises below

Tu souhaites être notifier quand c’est en dessous (below) ou au dessus (above) ?

Ok déjà une erreur de moins ! Je veux être notifié lorsque c’est au-dessus de la valeur mais, comme indiqué dans mon message précédent, j’ai un problème avec le service de notification car le script de test ne fonctionne pas.

Regarde par ici pour les notifications ios :

https://forum.hacf.fr/t/notification-personnalisee-ios-compagnon/2175

Je vais regarder mais bien voulu comprendre pourquoi l’Apple Push Notification Service (APNS) ne fonctionne pas.

Je te conseilles d’ouvrir des sujets dédiés à tes problèmes :+1: