Coloration nouveaux badges (août 2024)

Bonjour à tous

Mon problème

Je souhaite pouvoir changer la couleur de l’icône du badge
J’ai essayé :

        - entity: input_text.edf_couleur_utile
          name: EDF couleur
          display_type: complete
          color: > 
            {% set state = states('input_text.edf_couleur_utile') %}  
                {% if state == 'BLEU' %}
                  blue
                {% elif state == 'BLANC' %}
                  yellow
                {% elif state == 'ROUGE' %}
                  red
                {% else %}
                  grey
                {% endif %}

Quand je remplace blue par une expression donnant blue, la coloration disparaît.
Quelqu’un a-t-il une idée ?
Merci

Ma configuration


[center]## System Information

version core-2024.8.1
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.12.4
os_name Linux
os_version 6.6.31-haos-raspi
arch aarch64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 5000
Installed Version 1.34.0
Stage running
Available Repositories 1457
Downloaded Repositories 5
HACS Data ok
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 13.0
update_channel stable
supervisor_version supervisor-2024.08.0
agent_version 1.6.0
docker_version 26.1.4
disk_total 13.6 GB
disk_used 6.0 GB
healthy true
supported true
host_connectivity true
supervisor_connectivity true
ntp_synchronized true
virtualization
board rpi4-64
supervisor_api ok
version_api ok
installed_addons Mosquitto broker (6.4.1), Zigbee2MQTT (1.39.1-1), Advanced SSH & Web Terminal (18.0.0), File editor (5.8.0)
Dashboards
dashboards 5
resources 4
views 8
mode storage
Recorder
oldest_recorder_run 13 août 2024 à 15:46
current_recorder_run 14 août 2024 à 23:40
estimated_db_size 139.95 MiB
database_engine sqlite
database_version 3.45.3
[/center] Comment récupérer ma configuration : Dans votre HA, Menu latéral `Paramètres` > `Système` > `Corrections` puis les trois petits points en haut a droite > `Informations Système` puis une fois en bas `Copier` ___

Hello

Les nouveaux badges sont dérivés du hacs mushroom.
Si tu installes celui-ci, il te sera alors proposé le mushroom template qui permet plein de personnalisations.

1 « J'aime »

bonjour
Avec la nouvelle version de HA core-2024.8.2
new_badges

Ca marche avec mushroom badge code ci-dessous

type: custom:mushroom-template-badge
content: '{{states(''input_text.edf_couleur_utile'') }}'
icon: mdi:mushroom
color: |
  {% set state = states('input_text.edf_couleur_utile') %}  
        {% if state == 'BLEU' %}
          blue
        {% elif state == 'BLANC' %}
          yellow
        {% elif state == 'ROUGE' %}
          red
        {% else %}
          grey
        {% endif %}
entity: input_text.edf_couleur_utile
label: EDF couleur
tap_action:

Ca ne marche pas avec le badge de base :

type: entity
entity: input_text.edf_couleur_utile
name: EDF couleur
display_type: complete
color: |
  {% set state = states('input_text.edf_couleur_utile') %}  
        {% if state == 'BLEU' %}
          blue
        {% elif state == 'BLANC' %}
          yellow
        {% elif state == 'ROUGE' %}
          red
        {% else %}
          grey
        {% endif %}
state_content: state
icon: ''

Ca ne marche pas avec les mushrooms chips card

type: custom:mushroom-chips-card
chips:
  - type: entity
    entity: input_text.edf_couleur_utile
    name: EDF couleur
    icon_color: |
      {% set state = states('input_text.edf_couleur_utile') %}  
        {% if state == 'BLEU' %}
          blue
        {% elif state == 'BLANC' %}
          yellow
        {% elif state == 'ROUGE' %}
          red
        {% else %}
          grey
        {% endif %}
    icon: mdi:mushroom
  - type: entity
    entity: input_boolean.defaut_surcharge
    icon_color: red
    name: Surcharge
    content_info: name

Le type doit être template :wink:

exemple :

type: custom:mushroom-chips-card
chips:
  - type: template
    entity: sensor
    icon: mdi:grass
    icon_color: |
      {% if states('sensor.pollens_56_risklevel') == '1' %}
      green
      {% elif states('sensor.pollens_56_risklevel') == '2' %}
      orange
      {% else %}
      red
      {% endif %}
    tap_action:
    action: more-info

OK,
Avec template, l’icône se colore, mais name disparaît. Il faut alors utiliser content pour afficher du texte à côté.

Tant qu’on est sur les solutions alternatives, les badges en card-mod ne fonctionnent plus, est-ce normal ?
exemple

type: entity
entity: sensor.edf_tempo_current
card_mod:
  style: |
    :host {
      {% set state = states('sensor.edf_tempo_current') %}
      {% if state == 'BLEU' %}
        --label-badge-red: DodgerBlue;
      {% elif state == 'BLANC' %}
        --label-badge-red: silver;
      {% elif state == 'ROUGE' %}
        --label-badge-red: red;
      {% else %}
        --label-badge-red: grey;
      {% endif %}
    }

Même problème également…
J’ai un souci puisque je ne peux pas refaire ce que j’avais mis en place, à savoir un changement de couleur en fonction des états avec le nom en français qui correspond.
Idem avec une entité, je n’ai plus l’image avec la couleur autour.
Vous avez un moyen de faire cela ?
Faut il attendre une correction pour que les card-mod refonctionnent ?

Citation
Même problème également…
J’ai un souci puisque je ne peux pas refaire ce que j’avais mis en place, à savoir un changement de couleur en fonction des états avec le nom en français qui correspond.
Idem avec une entité, je n’ai plus l’image avec la couleur autour.
Vous avez un moyen de faire cela ?
Faut il attendre une correction pour que les card-mod refonctionnent ?

Bonjour
Sur le site en anglais, il semble y avoir une solution ici :

Yes merci j’y suis arrivé.
Par contre sais tu comment faire avec une entité pour mettre l’image (dans la partie « Picture ») ?
image

Merci pour ton aide!

Salut, au cas ou tu n’aurais pas encore trouvé, il faut utiliser ce code :

{{ state_attr('person.slim', 'entity_picture') }}

J’ai cherché pendant pas mal de temps, donc si ça peut aider…

A+