[Carte] Mise en forme de room-card avec mushroom et tutos

ok j’ai compris comment ça fonctionne.

Autre question, comment tu affiches l’état de plusieurs lumières par exemple ?
image

La carte en question se base sur un groupe avec toutes les lumières.

ensuite c’est une carte mushroom template avec le texte secondaire en template:
image

type: custom:mushroom-template-card
primary: Lumières
secondary: |+
  {% set all = expand(entity)| list -%}
  {% set ND1 = all | selectattr('state','eq','on')|list|count%}
  {% set D1 = all | selectattr('state','eq','off')|list|count%}
  Allumées : {{ND1}} 
  Eteintes: {{D1}}

icon: |
  {% if is_state(entity, 'on') %} 
    mdi:lightbulb-group
  {% else %}
    mdi:lightbulb-group-off
  {% endif %}
icon_color: |
  {% if is_state(entity,'on') %}
    orange
  {% else %}
    grey
  {% endif %}
badge_icon: |-
  {% set all = expand(entity)| list -%} 
  {% set open1 = all | selectattr('state','eq','on')|list|count%}
  {% if open1 <= 9 %}
    mdi:numeric-{{open1}}
  {% elif open1 >= 10 %}
    mdi:numeric-9-plus
  {% else %}
    none
  {% endif %}
badge_color: |
  {% set all = expand(entity)| list -%} 
  {% set open1 = all | selectattr('state','eq','on')|list|count%}
  {% if open1 == 0 %}
    grey
  {% else %}
    orange
  {% endif %}
entity: light.toutes_les_lumieres
layout: horizontal
tap_action:
  action: navigate
  navigation_path: /lovelace-smartphone/lumieres
hold_action:
  action: call-service
  service: homeassistant.turn_off
  data: {}
  target:
    entity_id:
      - group.lumieres_toutes
double_tap_action:
  action: more-info
multiline_secondary: true
fill_container: false
view_layout:
  position: sidebar

Il est possible de faire autrement en mettant la partie template dans un sensor template et d’afficher ça avec une tuile:
image

le sensor:

    - name: Lumières
      unique_id: sensor.tuile_lumières
      icon: >-
        {% if is_state('light.toutes_les_lumieres', 'on') %}
          mdi:lightbulb-group
        {% elif is_state('light.toutes_les_lumieres', 'off') %}
          mdi:lightbulb-group-off
        {% else %}  
          mdi:lightbulb-group-off
        {% endif %}
      state: >-
        {% if is_state('light.toutes_les_lumieres', 'on') %}
          on
        {% else %}  
          off
        {% endif %}
      attributes:
        Compteur: >-
          {% set all = expand('light.toutes_les_lumieres')| list -%} 
            {{ all | selectattr('state','eq','on')|list|count }}/{{ all|list|count }}
        Allumées: >-
          {% set all = expand('light.toutes_les_lumieres')| list -%}
            {{  all | selectattr('state','eq','on')| map(attribute='name')|list }}
        Eteintes: >-
          {% set all = expand('light.toutes_les_lumieres')| list -%}
            {{  all | selectattr('state','eq','off')|map(attribute='name')|list }}

la tuile:

type: tile
features_position: bottom
vertical: false
entity: sensor.tuile_lumieres
name: Lumières
color: accent
tap_action:
  action: navigate
  navigation_path: /lovelace-smartphone/lumieres
icon_tap_action:
  action: more-info
state_content:
  - Compteur
  - Allumées
grid_options:
  columns: 6
  rows: 2
1 « J'aime »

ok. Et donc tu arrives aussi à récupérer l’état pour savoir si au moins une lumière est allumée vu que tu change la couleur de l’icone…c’est ça ?

Dans le premier cas c’est le groupe qui renvoie l’état.

Dans le second cas le code est dans le sensor (et c’est basé sur le même groupe…):

      state: >-
        {% if is_state('light.toutes_les_lumieres', 'on') %}
          on
        {% else %}  
          off
        {% endif %}

Bon j’avance avec ton tuto…J’ai cependant un truc que je pige pas .

je me bats avec une mushroom. Je veux afficher le nombre de volets ouverts ou alors qu’ils sont tous fermés.
Quand je mets 3 volets marche pas. Si j’en mets que 2 ça fonctionne :person_facepalming:t2::person_facepalming:t2:. Une idée ?

  - type: custom:mushroom-template-card
    primary: Volets
    secondary: >
      {% set shutters = [
        states.cover.volet_bureau_cover_0,
        states.cover.volet_salon_cover_0
        states.cover.volet_salle_a_manger_cover_0
      ] %}
 
      {% set total_shutters = shutters | length %}
 
      {% set open_shutters = shutters | selectattr('state', 'eq', 'open') | list
      | count %}
 
 
      {# Affiche le nombre de volets ouverts et le total #}
 
      {% if open_shutters > 0 %}
        {{ open_shutters }} / {{ total_shutters }} ouvert
      {% else %}
        Tous fermés
      {% endif %}

Salut
Peut être que tu as oublié un séparateur du style « , » entre tes différents volets.