Für alle die etwas Abwechslung bei den Nachrichten haben möchten, die Home Assistant aus Automatisierungen versendet, hat Osorkon einmal eine Beispiel-Aktion geteilt, wie man Texte zufällig gestalten kann. Zuerst werden Array-Variablen mit den zur Auswahl stehenden Wörtern/Textpassagen gefüllt. Anschließend wird zufällig einer der Werte in der Nachrichtenausgabe verwendet.
Danke @Osorkon für’s Teilen der Idee
configuration.yaml
1action:
2 - service: notify.telegram_xy
3 data:
4 message: >-
5 {# Erzeugt ein Array und füllt es mit verschiedenen Begrüßungen #}
6 {# Durch den Filter 'random' wird zufällig eine Begrüßung gewählt #}
7
8 {%- set mygruss = [ "Hallo", "Guten Tag", "Hi",
9 "Servus", "Bonjour", "Dziendobry",
10 "Buen dia", "Konnichiwa" ]|random -%}
11
12 {# Erzeugt ein 2. Array und füllt es mit verschiedenen Namen #}
13 {# Durch den Filter 'random' wird zufällig ein Name gewählt #}
14
15 {%- set myname = [ "Meister", "Chef", "Gebieter", "xy" ]|random -%}
16
17
18 {# Ausgabe hier -#}
19
20 {{ mygruss }} {{ myname }} , die Garage steht noch offen.
21
22
23 {# oder hier über die Format-Funktion -#}
24
25 {{'{} {}, es ist {} und die garage steht noch offen.'.format(mygruss, myname, now().strftime('%H:%M')) -}}
26
27
28Falls Ihr die Zufallswerte mehrfach verwenden möchtet, könnt Ihr diese auch in einen Helper schreiben (z.B. input_select.mygruss) und diesen dann in der Aktion verwenden:
29
30action:
31 - service: notify.telegram_xy
32 data:
33 message: >-
34 {{ state_attr('input_select.mygruss', 'options') | random }} die Garage steht offen.
