Hey there!
I’ll start off by saying, I’m extremely new to this stuff, helped along by ChatGPT and year old reddit/HA forum posts.
My issue is pretty straight forward. I’m setting up Alarmo, and when a the alarm is triggered, i want to have TTS deliver a message on my speaker - which works. What does NOT work, is trying to get the “friendly name” of the device that triggered the alarm.
I want the TTS to be like “DEVICE NAME has been opened.” on a loop until i disable it.
Here is the code!
alias: Loopende TTS Alarm
mode: single
fields:
sensor_id:
description: Entity ID of the triggered sensor
sequence:
- variables:
sensor_name: >-
{{ state_attr(trigger.entity_id, 'friendly_name') or trigger.entity_id
}}
- repeat:
while:
- condition: state
entity_id: input_boolean.alarm_tts_loop
state: "on"
sequence:
- data:
entity_id: media_player.sovevaerelsespeaker
action: media_player.turn_on
- data:
entity_id: media_player.sovevaerelsespeaker
volume_level: 0.5
action: media_player.volume_set
- data:
entity_id: media_player.sovevaerelsespeaker
message: "{{ sensor_name }} er blevet åbnet. Tjek venligst"
action: tts.cloud_say
- delay: "00:00:10"