Multiple-entity-row : lister l'ensemble des sensors à partir d'une chaine de caractères

Bonjour,

Dans l’exemple ci dessous, j’ai 4 sensors sur 2 lignes.
Je cherche une solution pour ne pas avoir à mettre explicitement le nom complet mais en me basant sur le début du nom des sensors.

Par exemple mettre « sensor.virt_snd_hr_* » mais ça ne fonctionne pas.

Merci

type: entities
entities:
  - entity: sensor.virt_snd_hr_buanderie
    type: custom:multiple-entity-row
    name: Buanderie
    icon: none
    entities:
      - entity: sensor.virt_snd_tp_buanderie
        name: false
  - entity: sensor.virt_snd_hr_exterieure_entree
    type: custom:multiple-entity-row
    name: Exterieur
    icon: none
    entities:
      - entity: sensor.virt_snd_tp_exterieure_entree
        name: false

J’ai aussi essayé cette solution sans succès :

Bonjour,
je comprends pas le but ?

Comme les sensors ont un nom structuré, j’aimerai les afficher sans les déclarer un par un.

Genre qu’il m’affiche tout ceux commerçant par
sensor.virt_snd_tp_

Comme ça si je crée de nouveau sensors, il me traite ça sans que je lui dise

Il semble que lui y soit arrivé, mais je n’arrive pas à le reproduire

Bonjour,
image

il utlise du decluttering, c’est le cas chez toi ?

tu peux aller voir ici :
https://github.com/custom-cards/decluttering-card

3 « J'aime »

Ok, comme la dit @LeLapinFou , faut utiliser decluttering-card.
Je comprends mieux le [[ entity ]], car je voyais pas le rapport avec multiple-entity-row.

Salut messieurs,

Effectivement dans le lien posté par @Oles67 , le gars utilise « decluttering ».

Mais ça n’évite pas de renseigner toutes les entités, en tant que « variables » lors de la création de la carte.

Je pense que @Oles67 cherche plus un « mix » de custom:auto-entities et de multiple-entity-row.

Et si c’est bien le cas, alors c’est pas forcement simple.

J’ai fait qq recherches mais je ne trouve pas le « truc » qui irait bien.

1 « J'aime »

@Oles67

Tu peux tester ça :

type: custom:auto-entities
card:
  type: entities
filter:
  template: |-
    {% for DEVICE in states.sensor -%}
      {%- if DEVICE.entity_id | regex_match('sensor.virt_snd_hr_*',ignorecase=False) -%}
        {{
          {
            'entity': DEVICE.entity_id,
            'type': 'custom:multiple-entity-row',
            'icon': 'false',
            'entities':
              [
                {
                  'entity': DEVICE.entity_id.replace('hr', 'tp'),
                  'name': false
                }
              ],
          }
        }},
      {%- endif -%} 
    {%- endfor %}
sort:
  method: friendly_name

J’ai trouvé qqc sur le forum international qui m’a permit tester un peu à la maison.

image

code de mon test
type: custom:auto-entities
card:
  type: entities
filter:
  template: |-
    {% for DEVICE in states.sensor -%}
      {%- if DEVICE.entity_id | regex_match('sensor.tph_ch.*._battery',ignorecase=False) -%}
        {{
          {
            'entity': DEVICE.entity_id,
            'type': 'custom:multiple-entity-row',
            'name': '-'.join((DEVICE.attributes.friendly_name).split('-')[1:]).split(' ')[0],
            'icon': 'false',
            'entities':
              [
                {
                  'entity': DEVICE.entity_id.replace('battery', 'temperature'),
                  'name': false
                },
                {
                  'entity': DEVICE.entity_id.replace('battery', 'humidity'),
                  'name': false
                }
              ],
          }
        }},
      {%- endif -%} 
    {%- endfor %}
sort:
  method: friendly_name

Test effectué sur ces 3 capteurs :

2 « J'aime »

Ha mais ça fonctionne super bien ton code.
Merci beaucoup

image

1 « J'aime »