Allez, juste pour le fun une solution « tout en un » :
- ça remplace l’
input_select
et l’automatisation
d’un seul coup - ça fait la liste automatiquement de toutes les entités qui commencent pas
input_text.tel_
- ça mets en forme avec une majuscule (c’est ce qui fait que le code est long, sinon ça tiens en 1 ligne !)
template:
- select:
- name: contact
state: ""
options: >
{% set noms=
expand(states.input_text)
|selectattr('entity_id', 'match', '^input_text.tel_*')
|map(attribute='entity_id')
%}
{% set ns = namespace(options=[]) %}
{% for n in noms %}
{% set ns.options=ns.options + [n|replace('input_text.tel_','')|title] %}
{% endfor %}
{{ns.options}}
select_option:
- service: input_text.set_value
target:
entity_id: input_text.call_number
data:
value: "{{ states('input_text.tel_'~ option) }}"
pour l’utilisation, il faut virer l’automatisation, et remplacer dans la carte input_select.contact
par select.contact