Va voir le sujet ici, on y parle de la couleur d’icône (avec l’utilisation de custom-ui
mais en bas de post, il y a des exemple de code.
Merci pour vos réponses.
j’ai un switch pour ouvrir ma porte de garage qui agit comme un bouton poussoir et un capteur qui me dit que la porte de garage est ouverte ou pas.
Sur lovelace mon switch apparait tout le temps avec la même icone, il passe jaune 2 secondes lorsqu’il est actionné.
je voudrais que lorsque la porte est ouverte l’icone de mon switch soit une porte de garage ouverte et lorsque la porte est fermée …
Apparemment avec Customize on peut uniquement modifier en fonction de son propre état alors que là l’icone du switch va dépendre d’un sensor
Oui avec un template ça fonctionne merci mais du coup j’ai 2 switchs pour la même chose
non non je ne parle pas de template sensor
mais d’utiliser la fonction customize
.
En clair, customize
te permet de forcer
une propriété d’un capteur, excepté son état.
Donc, tu peux très bien en fonction de l’état de ton capteur, ou d’un ou plusieurs autres capteurs, faire évoluer le nom, l’icone.
Ici, je change à la fois l’icone avec customize
et également la couleur à l’aide de custom-ui
je vais regarder ça, merci beaucoup
Au lieu de passer par un switch, pourquoi pas utiliser un Template Cover
J’ai fait cela pour mon portail avec un capteur unique de position fermé
J’utilise le cover en mode toogle sur lovelace
Non pas du tout, va voir le lien que j’ai mis plus haut pour avoir des exemples mais customize
te permet de modifier en fonction de l’état de n’importe quel capteur.
Avec le code ci-dessous, le nom
et l’icone
changent suivant l’état d’un capteur :
Si la porte de garage est ouverte, alors le nom est « Fermer le garage » et son icone est une porte de garage ouverte et inversement si la porte est fermée.
customize: sensor.porte_du_garage: templates: friendly_name: if (entities['binary_sensor.door_window_sensor_158XXX'].state === 'off') return 'Ouvrir le garage'; if (entities['binary_sensor.door_window_sensor_158XXX'].state === 'on') return 'Fermer le garage'; icon: if (entities['binary_sensor.door_window_sensor_158XXX'].state === 'off') return 'mdi:garage'; if (entities['binary_sensor.door_window_sensor_158XXX'].state === 'on') return 'mdi:garage-open';
Alors, déjà un gros merci Clemax, je ne savais pas que custom UI avait été mis à jour, j’ai retrouvé mes couleurs
Par contre dans customize.yaml j’ai fait ça :
switch.porte_de_garage_switch: templates: icon: if (entities['binary_sensor.garage_etat'].state === false) return 'mdi:garage-open'; if (entities['binary_sensor.garage_etat'].state === true) return 'mdi:garage-open';
mais ça ne marche pas, j’ai essayé avec off et on à la place de false et true, même résultat
Je te confirme qu’il faut utiliser on/off
au lieu de true/false
sinon cela ne marchera pas.
Lorsque je copie ton code et change le binary_sensor
par un des miens cela fonctionne (en ayant remplacé true/false
par on/off
):
switch.porte_de_garage_switch: templates: icon: if (entities['binary_sensor.garage_etat'].state === 'off') return 'mdi:garage-open'; if (entities['binary_sensor.garage_etat'].state === 'on') return 'mdi:garage-open';
Je pense que ta configuration n’est pas rechargée.
Si tu veux vérifier, ajout un return mdi:home
à la fin et recharge la configuration :
switch.porte_de_garage_switch: templates: icon: if (entities['binary_sensor.garage_etat'].state === 'off') return 'mdi:garage-open'; if (entities['binary_sensor.garage_etat'].state === 'on') return 'mdi:garage-open'; return 'mdi:home'
Si ta configuration est bien rechargée, soit l’icone sera une porte de garage ouverte ou fermée, sinon ce sera une maison. Cela permet de savoir si une erreur est dans les conditions ou non.
Au final, tu devrais avoir cela dans l’onglet Outils de développement
:
et cela dans ton lovelace :
ça marche !
en fiat il lui faut une icone sans condition si non il n’en veut pas.
Merci beaucoup !
Tant mieux !
N’hesite pas mettre un sur la mise a jour de custom-ui au passage.
Sinon, regarde bien ma dernière image, je n’utilise pas de return
sans condition… Du coup si la condition n’est pas remplie, l’icône de base est utilisée.
Je pense vraiment que lors de tes tests, la configuration ne s’était pas correctement rechargée.
pourtant je redémarre HA après chaque modif en allant dans configuration → contrôle du serveur
Effectivement, cela devrait suffire.
Le redémarrage est le moyen le plus sûr effectivement.
Pour customize
, tu peux simplement utiliser le service homeassistant.reload_core_config
ou bien par le bouton dans Configuration
puos Contrôle du serveur
et enfin le bouton :
merci, c’est se que j’utilisais au début mais ne voyant pas les modifs je me suis dit que ce n’était pas suffisant
merci pour ton aide encore une fois
Pas de problème
J’écris tout ça pour les autres utilisateurs également qui passeraient par là et qui decouvre le fonctionnement.
Non mais je pense qu’il y a un truc qui chiotte, je me suis dit tien ça serait bien que l’icone soit rouge quand la porte est ouverte
du coup (pour le test je met en rouge quand la porte est fermée)
switch.porte_de_garage_switch: templates: icon_color: if (entities['binary_sensor.garage_etat'].state === 'off') return '#ff3333'; icon: if (entities['binary_sensor.garage_etat'].state === 'off') return 'mdi:garage'; if (entities['binary_sensor.garage_etat'].state === 'on') return 'mdi:garage-open'; return 'mdi:home';
ça ne marche pas alors que c’est la même chose !
Ajoute quand même un return blue;
par exemple pour être sûr que custom-ui
fonctionne.
déjà essayé, pas mieux, ça me gonfle sérieusement, je pense que je vais faire une pose, passer une matinée pour changer une icone loooool
Merci beaucoup pour ton aide et désolé pour le chat loool