Voila le capteur qui modifie l’icone et la couleur du switch
et voila le switch :
Ça me semble bon…
Montre l’entité dans une carte entités (avec un ‹ s ›) pas la carte avec l’entité unique.
Je m’absente pour 2/3h je repasse après.
avec une carte entités ça fonctionne mais pas avec une carte bouton
Ok tant mieux si ça marche.
Crée un nouveau topic pour ce problème.
Comme ça la prochaine fois, pour les autres, ce sera pas en fin de topic en hors sujet.
ok, ça marche merci
je vais créer un autre topic
je fais des essais dans tous les sens, mais cela peut il fonctionner avec un bouton « custom:button-card » et « entity_picture » a la place de « icon »?
j’ai un doute
Regarde les vidéos pour voir la puissance de personnalisation de la carte.
Je les ai toutes visionné deja
Mais je n’ai rien vu sur le changement dynamique de l’image
j’ai réussi a mettre une image a la place d’une icone, mais je ne trouve pas comment modifier cette image en fonction de la position (ouverte ou fermée) de mon portail.
j’ai essayé les customize comme dans ton tuto, mais je ne pige pas trop comment identifier ce custom button.
En effet, il n’apparait pas dans les entitées comme un switch
et l’argument « entity » que je dois lui donner est justement celui du switch qui commande le portail
il doit bien y avoir un moyen, mais je ne maitrise pas encore suffisamment
Partage ton code de la carte
Ca va se jouer avec du Javascript template
voici le code :
- type: custom:button-card
name: BPportail
show_name: false
show_entity_picture: true
entity_picture: /local/images/portail.png
tap_action:
action: toggle
entity: switch.cde_portail
le but est de remplacer la valeur de Entity_picture par /local/images/portail ouver.png ou /local/images/portail ferme.png selon l’etat du capteur
je suis preneur de toute nouvelle piste
Comme ceci ?
type: custom:button-card
name: BPportail
show_name: false
show_entity_picture: true
entity: switch.cde_portail
entity_picture: |
[[[
return entity.state === 'on' ? '/local/images/garage-door-open.png' : '/local/images/garage-door-close.png';
]]]
ça devient tres interessant
Le « entity.state », peut il provenir de l’info de mon capteur fin de course qui me donne l’etat réel du portail?
oui, en lisant la documentation de la carte, cela donne :
type: custom:button-card
name: BPportail
show_name: false
show_entity_picture: true
entity: switch.cde_portail
entity_picture: |
[[[
return states['binary_sensor.garage'].state === 'on' ? '/local/images/garage-door-open.png' : '/local/images/garage-door-close.png';
]]]
GENIAL
t’es un chef
cela fonctionne a merveille
il faut que je me penche en détail sur cette syntaxe de HA
une question par rapport a cette syntaxe :
dans ce cas, nous avons 2 possibilitées : ON ou OFF
quelle serait la syntaxe si il y avait 3 (ou plus) de possibilité
j’imagine que c’est un genre de if … else en YAML?
j’avais pas ça en tete dans mes connaissances de Javascript
donc, est ce que quelques chose comme ça serait coherent ?
entity_picture: |
[[[
return states['sensor.tempo_aujourd_hui'].state === 'TEMPO_ROUGE' ? '/local/images/tempo rouge.png' :
return states['sensor.tempo_aujourd_hui'].state === 'TEMPO_BLANC' ? '/local/images/tempo blanc.png':
'/local/images/tempo bleu.png';
]]]
ps : c’est pour l’affichage de ma couleur EDF Tempo
je crois que j’ai trouvé :
entity_picture: |
[[[
return states['sensor.tempo_aujourd_hui'].state === 'TEMPO_ROUGE' ? '/local/images/tempo rouge.png': states['sensor.tempo_aujourd_hui'].state === 'TEMPO_BLANC' ? '/local/images/tempo blanc.png': '/local/images/tempo bleu.png';
]]]
ça a l’air de fonctionner, mais la ligne est longue
plus qu’a trouver comment la mettre sur plusieurs lignes
Voici un exemple :
type: custom:button-card
show_icon: true
icon: |
[[[
if (states['input_boolean.cat'].state == 'on' )
return 'mdi:cat';
if (states['input_boolean.dog'].state == 'on' )
return 'mdi:dog';
if (states['input_boolean.home'].state == 'on' )
return 'mdi:home';
return 'mdi:car';
]]]
top
effectivement, vu comme ça, cela ressemble un peu plus a du javascript
merci de ton aide