Comment colorer ses icônes pour les débutants? #Tuto débutant N°1

Tu as laissé === Ouvert met plutôt === 'on'

1 « J'aime »

Et en utilisant ce code ?

J’aurais dû rester plus « binaire » en effet c’est bien ça… sincèrement désolé de t’avoir fait perdre tant de temps. Merci

C’est pas du temps perdu, car tu ne sera certainement pas le seul à rencontrer ce problème.

Au moins les autres, profiterons de ton expérience. :+1:

Je t’invite à aller lire différent topic sur le forum et parcourir les messages, plein d’informations s’y trouvent.

2 « J'aime »

C’est vraiment cool, j’ai custom toutes mes entités et c’est un véritable gain de confort d’utilisation ! sais tu à tout hasard si c’est aussi possible de custom la couleur de ses badges? notamment pour les statuts home et away

Oui, tu peux mais pour cela c’est avec card-mod.

J’en ai parlé ici.

Et pour les badges, c’est ici.

1 « J'aime »

Salut,quand vous dites qu’il faut supprimer toute l’ancienne intégration,il faut supprimer quoi exactement?


J’ai ça dans mon fichier custom ui.
J’ai fait les modifs mais pour l’instant je n’est aucun changement dans mes icones.
Merci bien.

Supprime tout le contenu du dossier, et toutes les références dans configuration.yamlpuis refais les étapes du post 2.

Attention a bien prendre le format RAW sinon rien ne marchera.

ok,le format raw je l’ai ouvert et j’ai tout copier et coller dans un fichier txt que j’ai modifier en .js c’est bon comme ça?

Oui c’est bon comme ça.

Bon,juste en supprimant tout et en remettant le fichier RAW ça à l’air d’avoir marcher,j’ai tout mes icônes qui se sont « recolorés » comme avant. donc je pense que ça doit etre bon…

Par contre j’ai 2 facons d’ecrire et ca marche avec les 2 c’est normal?

binary_sensor.fenetre_kyara:
  friendly_name: Fenêtre de Kyara
  templates:
    icon_color: "if (state === 'on') return 'rgb(255,0,0)'; return 'rgb(20,171,20)';\
      \  \n"
    icon: 'if (state === ''on'') return ''mdi:window-open-variant''; return ''mdi:window-closed-variant''; '
    
binary_sensor.fenetre_parents:
  friendly_name: Fenêtre Parents
  icon_color: red
  templates:
    icon: 'if (state === ''on'') return ''mdi:window-open-variant''; return ''mdi:window-closed-variant''; '

Tout est normal dans ton code.

Un coup tu force la valeur à une valeur fixe (fenetre_parents), pour l’autre, la couleur changera suivant l’état.

Qu’est ce qui te choc ?

eh bien dans la fenetre kyara j’ai :icon_color: « if (state === ‹ on ›) return ‹ rgb(255,0,0) ›; return ‹ rgb(20,171,20) ›;
\ \n »

et dans fenetres parents j’ai : icon_color: red

Les 2 marches,mais y a t il une meilleur solutions et qu’apporte l’une par rapport a l’autre?

Ma réponse est dans mon précédent post :

Si tu affiche fenêtre parents et fenêtre kyara dans une carte entités, l’icône de fenêtre parents sera toujours red et l’icône de fenêtre kyara sera red si l’état de binary_sensor.fenetre_kyara est à on (ouverte) sinon elle sera verte.

Les deux solutions ne font donc pas la même chose.

Pour le cas d’un capteur d’ouverture, la meilleur solution pour avoir la meilleur visibilité de l’état est la solution utilisée pour fenêtre kyara.

Les deux sont utiles :

  • une pour fixer une couleur à une entité

  • une pour faire varier la couleur suivant l’état d’un ou plusieurs capteurs

Bizarre alors,car j’ai bien fenêtre parents qui est verte et passe en rouge quand elle est ouverte,et non pas fixe en rouge.couleur

Intéressant, ce domaine a peut être une exception…

Je testerais ce soir.

Néanmoins, utiliser template pour changer un attribut suivant l’état d’un capteur me paraît plus propre.

Ce n’est que mon avis.

Sous qu’elle version est tu ?

Je pense que c’est un problème de cache.

Essaie de vider le cache (généralement la combinaison CTRL+SHIFT+R).

Je viens de faire le test, et je me suis retrouvé avec un problème de cache effectivement.

Mon fichier customize.yaml indiquait la couleur rouge dans un premier temps puis je l’ai modifié en mettant la couleur verte.

Après avoir recharger la configuration, la couleur de l’îcone dans la carte Entités était toujours rouge. Il a fallu vider le cache, voir même recharger l’onglet pour que la modification verte soit effective.

Ce qui donne comme je l’ai mentionné plus haut :

Avec simplement icon_color: red :
chrome-capture

Avec icon_color: if (state === 'on') return 'red'; return 'green'; :
chrome-capture (1)

Tiens nous au courant.

Je suis en version 114.4.

J’avais déjà vidé le cache plusieurs fois avec ctrl + shift + r,mais du coup j’ai changé la couleur red en green dans mon customize et redémarré HA et la effectivement il reste bien verte quel que soit l’état du capteur de position.

Je vais remettre :

templates:
icon_color: « if (state === ‹ on ›) return ‹ rgb(255,0,0) ›; return ‹ rgb(20,171,20) ›;
\ \n »
icon: 'if (state === ‹ ‹ on › ›) return ‹ ‹ mdi:window-open-variant › ›; return ‹ ‹ mdi:window-closed-variant › ›; ’

Pour que mon icone change bien de couleurs au changement d’état.

J’ai remarqué aussi que lorsque je travaille en multi-onglet avec HA,ça pose des fois problème…