Friendly_name wird nicht ausgegeben?

Hi!

Ich habe folgende Automation erstellt:

alias: Steckdosenüberwachung
description: Benachrichtigung, wenn eine Steckdose ausgeschaltet wird.
trigger:
  - platform: state
    entity_id:
      - switch.antela_smart_steckdose_2_sockel_1
      - switch.weinkuhlschrank_steckdose_1
      - switch.kuhlschrank_gartenhaus_sockel_1
      - switch.geschirrspueler_sockel_1_2
      - switch.antela_smart_steckdose_4_sockel_1
      - switch.pc_und_nas_sockel_1
      - switch.antela_smart_steckdose_3_sockel_1
      - switch.waschmaschine_sockel_1_2
    from: "on"
    to: "off"
condition: []
action:
  - service: notify.mobile_app_iphone15
    data:
      message: >-
        {{ state_attr('trigger.entity_id', 'friendly_name') }} Steckdose
        stromlos!
      title: ACHTUNG!
  - service: notify.persistent_notification
    metadata: {}
    data:
      message: >-
        {{ state_attr('trigger.entity_id', 'friendly_name') }} Steckdose
        stromlos!
      title: ACHTUNG!
mode: single

Allerdings erhalte ich beim Testen (also wirkliches Ausschalten der betreffenden Steckdose) zwar eine Meldung aber statt “friendly_name” wird “None” ausgegeben.
Was mach ich da falsch? Der friendly_name ist jedenfalls korrekt eingetragen.

Ich würde es so versuchen

Steckdose {{ trigger.from_state.attributes.friendly_name }} stromlos!

Bei einer Message darf man nicht mit {{ anfangen. Das führt auch bei mir dazu, dass nichts ausgegeben wird.

Danke!
Hat aber leider nicht geklappt, jetzt kommt die Meldung “Steckdose None stromlos” :rofl:

In der Entwicklungsumgebung passt es dagegen:

Edit:
Ich habe jetzt die verschiedensten Entitäten oder Gerätezustände ausprobiert. Ich erhalte immer statt dem friendly-name “none”.

Habe es gerade nachgestellt

Steckdose {{ state_attr('trigger.entity_id', 'friendly_name') }} stromlos! 

liefert None zurück, aber

Steckdose {{ trigger.from_state.attributes.friendly_name }} stromlos!

liefert den Friendly Name.

Keine Ahnung was bei dir nicht passt. Sonst versuch mal

Steckdose {{ trigger.to_state.attributes.friendly_name }} stromlos!
alias: Steckdosenüberwachung
description: Benachrichtigung, wenn eine Steckdose ausgeschaltet wird.
trigger:
  - platform: state
    entity_id:
      - switch.waschmaschine_sockel_1_2
    from: "on"
    to: "off"
condition: []
action:
  - service: notify.mobile_app_iphone15
    data:
      message: >-
        Steckdose {{ trigger.from_state.attributes.friendly_name }} stromlos!
      title: ACHTUNG!
mode: single

Das löst dann gar keine Benachrichtigung mehr aus. Egal, ob from-state oder to-state.
Ich habe schon alle möglichen Sensoren, Schalter, binäre Sensoren, Lichter probiert. Immer erhalte ich statt dem friendly-name “none”.
Einfache Anführungszeichen, doppelte…macht alles keinen Unterschied.

Hab auch das hier probiert:

alias: Steckdosenüberwachung
description: Benachrichtigung, wenn eine Steckdose ausgeschaltet wird.
trigger:
  - platform: device
    type: turned_off
    device_id: 0d3209c5db8e5c13ca61e8c38de3f76f
    entity_id: 75c00e27aea1dd945d6e15ee318e93be
    domain: switch
condition: []
action:
  - service: notify.mobile_app_iphone15
    data:
      message: Steckdose {{ trigger.entity_id }} stromlos!
      title: ACHTUNG!
mode: single

Also Gerät statt Entität. “trigger.entity_id” bleibt einfach leer und ich erhalte die Ausgabe “Steckdose stromlos”

Wurde die Automation denn überhaupt ausgelöst?

Nein. Mit “trigger.from_state.attributes.friendly_name” wird nichts ausgelöst bzw. keine Benachrichtigung gesendet.
Ich hab schon alles durch, was mit triggern zu tun hat :grin:

alias: Steckdosenüberwachung
description: Benachrichtigung, wenn eine Steckdose ausgeschaltet wird.
trigger:
  - platform: device
    type: turned_off
    device_id: 4d1e816b4a0c8078482dc7e5eeda2975
    entity_id: 9ec95869a0bb982668eb9a6ed01bebe6
    domain: switch
condition: []
action:
  - service: notify.mobile_app_iphone15
      data_template:
        message: Steckdose {{ trigger.to_state.attributes.friendly_name }}: {{ trigger.to_state.state }}
mode: single

Es wird entweder nichts ausgegeben oder der Inhalt zwischen den geschweiften Klammern fehlt in der Message.

Steckdose {{ trigger.from_state.attributes.name }} stromlos!

geht auch nicht?

1 „Gefällt mir“

Nö. In diesem Fall kommt gar keine Benachrichtigung. Egal, ob trigger.to_state oder from_state.

message: |
  Steckdose {{ trigger.to_state.name }} stromlos!

Gruß
Osorkon

1 „Gefällt mir“

Mal triggerst du übers Gerät und mal über den Zustand der Entität. Da musst du, glaube ich, unterscheiden.
Theoretisch sollte es also über den Zustand so gehen:

alias: Steckdosenüberwachung
description: Benachrichtigung, wenn eine Steckdose ausgeschaltet wird.
trigger:
  - platform: state
    entity_id:
      - switch.waschmaschine_sockel_1_2
    from: "on"
    to: "off"
condition: []
action:
  - service: notify.mobile_app_iphone15
    data:
      message: >-
        Steckdose {{ trigger.to_state.attributes.friendly_name }} stromlos!
      title: ACHTUNG!
mode: single
1 „Gefällt mir“

@maxe
Ja, das kam zustande, weil ich alles mögliche ausprobiert habe.

alias: Steckdosenüberwachung
description: Benachrichtigung, wenn eine Steckdose ausgeschaltet wird.
trigger:
  - platform: state
    entity_id:
      - switch.antela_smart_steckdose_2_sockel_1
      - switch.weinkuhlschrank_steckdose_1
      - switch.kuhlschrank_gartenhaus_sockel_1
      - switch.geschirrspueler_sockel_1_2
      - switch.antela_smart_steckdose_4_sockel_1
      - switch.pc_und_nas_sockel_1
      - switch.antela_smart_steckdose_3_sockel_1
      - switch.waschmaschine_sockel_1_2
    from: "on"
    to: "off"
condition: []
action:
  - service: notify.mobile_app_iphone15_elmar
    data:
      message: |
        Steckdose {{ trigger.from_state.name }} stromlos!
      title: ACHTUNG!
mode: single

Hier wird gar keine Benachrichtigung versendet.

und so auch nicht:

action:
  - service: notify.mobile_app_iphone15_elmar
    data:
      message: >-
        Steckdose {{ trigger.to_state.attributes.friendly_name }} stromlos!
mode: single

Und da kommt “Steckdose None stromlos!” raus:

action:
  - service: notify.mobile_app_iphone15_elmar
    data:
      message: >-
        Steckdose {{ state_attr('trigger.entity_id', 'friendly_name') }} stromlos!
mode: single

Kann vielleicht einer so lieb sein und das in einer Automation testen? Mit x-beliebigem switch.

Ich hatte es extra getestet

Hast du es mal mit nur name versucht?

1 „Gefällt mir“

@sirector:
Hast du das in der Automation ablaufen lassen oder das Gerät selbst ausgeschaltet?

Ich hab nämlich gerade das hier gefunden:
“I’m guessing you’re triggering this from the UI? If yes, that will error because there’s no trigger. Wait for the automation to occur naturally or use a test entity to trigger the automation.”

Das heißt, in der Automation kann man das scheinbar nicht testen - wie ich auch hier sehe:

Hab jetzt die betreffende Funksteckdose ausgeschaltet und die richtige Ausgabe erhalten!

    data:
      message: Steckdose {{ trigger.from_state.name }} stromlos!

Ich müsste jetzt noch andere Kombinationen testen, aber das hier funktioniert im Moment. Wie gesagt, nicht in der Automatisierung mit “Ausführen”.

Recht herzlichen Dank für eure Bemühungen!

Ich habe die Steckdose manuell ausgeschaltet, sonst gibt es keinen Trigger.

Die Automation manuell starten klappt nicht, weil dann Trigger und Condition nicht geprüft werden.

Ich bin allerdings davon ausgegangen, dass du es auch richtig getestet hast.

Ja, habs auch am Gerät selbst (Steckdose) getestet, aber vermutlich nur die Varianten, wo “none” ausgegeben wurde.
trigger.from_state.name oder
trigger.from_state.attributes.name
funktionieren super - aber da hab ich wohl dann nur mehr in der Automation selbst getestet. Wusste ja auch nicht, dass das nicht geht.
Alle anderen Automationen konnte ich bisher fehlerfrei testen, ohne das in Echtzeit am Gerät zu machen.

Wenn du selber über die Automation auslöst gibt es ja keinen Trigger :wink:

Nunja, aber wenn ich keine Variablen oder ähnliches in der message übergebe, funktioniert die Automation schon. Auch die Schrittdetails (trace) werden richtig angezeigt. Auch bei komplexeren Abläufen.
Wozu bräuchte ich sonst die Funktion “Ausführen”? :thinking:

Weil du dann nur die Aktionen “ausführst”.

Schon klar. Aber dennoch wärs ja nicht so schwer, friendly_name umzusetzen. Dazu hat die Automation ja schon die einzelnen Entitäten.