De mon coté, je suis parti sur une refonte de mon interface et j’ai choisi mushroom.
C’est joli, je peux uniformiser le tout. C’est pas tout rose non plus (j’avais simplifié le code avec le clustering et là c’est bien moins le cas)
Je bute sur un truc simple, mais je vois pas quelle option prendre :
Aujourd’hui j’ai une carte perso qui permet de piloter un groupe de volets
Je voudrais que ça ressemble le plus possible à la carte mushroom cover
Sauf que l’info secondaire correspond à rien … Afficher la moyenne des états d’ouvertures c’est bête
Je voudrai donc conserver les infos 5 3 1, comme je peux le faire avec la carte mushroom template
Mais je n’arrive à combiner la carte officielle et le template !
OK. Je regarde ce soir et je te dis / donne le code de la carte
J’ai (re) composé la carte à la main (plusieurs fois) donc j’ai pas spécialement attention à l’ordre
Désolé, changement de plan pour le WE donc je ne réponds que ce soir …
Donc dans la version finale de la carte, c’est une custom:stack-in-card horizontal avec des custom:mushroom-entity-card donc à mettre dans l’ordre qu’on souhaite
Version decluttering
Je suis entrain de découvrir les cartes Mushroom dont le style minimaliste me convient assez bien
Je suis tombé sur ce poste dans mes recherches et l’idée du résumé des différents volets est un des éléments que je souhaite aussi
Par contre à la lecture du code je découvre la synthaxe cover.volets_[[groupe]]
Je ne l’ai jamais vu encore mais normal je suis un jeune sur HA
J’ai un groupe de volet enfin plusieurs même (étage, rdc et maison)
Que signifie le double [[xxxx]] ?
Merci @Pulpy-Luke
Je n’ai pas éclusé la littérature sur ce sujet qui semble intéressant effectivement mais je n’ai pas encore compris le fonctionnement.
Néanmoins en créant un groupe pour mes volets et en reprenant un bout de ton code j’ai pu faire ceci
Bonjour oui bien sûr dès que je suis sur PC je fais ça sur ce même poste pour ne pas polluer le fil de discussion.
Bien voilà le code de la carte que j’utilise au final :
type: custom:mushroom-template-card
primary: Volets de la maison
multiline_secondary: true
secondary: >-
{% set all = expand('cover.vr_maison'|lower) -%} {% set positions = all |
map(attribute='attributes.current_position')|list-%} {% set moving = all |
selectattr('state', 'in', ['opening','closing'])|list|count -%} {% set open =
positions | reject("!=",100) |list |count -%} {% set closed = positions |
reject("!=",0) |list |count -%} {% set other = positions|list|count - open -
closed - moving -%}Fermés = {{ closed }} / Partiels = {{ other }} / Ouverts =
{{ open }} {% if moving >0 -%} / Actifs ={{ moving }}{% endif %}
icon: mdi:window-shutter
icon_color: green
badge_icon: ''
layout: horizontal
fill_container: true
En amont j’ai créer un groupe de volets roulant via créer une entrée choix groupe.
Mais je pense que c’est possible aussi en passant par la création d’un groupe dans groups.yaml
Je ne sais pas dire qui est le mieux je suis trop jeune sur le sujet
Tout ceci est en attendant de comprendre le fonctionnement décrit par @Pulpy-Luke sur le mécanisme de template decluttering et de la variable à la volée.
La différence notable c’est que dans les 2 derniers cas, le groupe se comporte comme 1 volet (notion de position, up/down, state identiques). C’est d’ailleurs pour ça que le code fonctionne. Avec groups.yaml, c’est plutôt une simple liste d’entités
Merci @Pulpy-Luke et merci @jerome6994 . Bien vu pulpy pour les différentes façons de créer un group. J’étais parti sur la première et rien ne remontait…Du coup avec la méthode 2 (que je ne connaissais pas), tout est nickel.
Pensant que je n’avais pas ajouter tous mes volets dans mon entité groupe je trouvais mon résultat conforme.
Hors il s’avère sue j’ai tous mes volets 7 x Zigbee Profalux mais aussi mes 2 x Velux.
Il ne manque que mon volet solaire RTS Somfy qui n’est pas encore intégré (Hors sujet mais je cherche aussi une solution MQTT pour ce dernier).
Bref à l’affichage avec le code que j’ai posté un peu plus haut il ne me compte pas du tout les Velux quelques soit la position ouvert fermé ou intermédiaire.
Une idée du pourquoi ils ne sont pas pris en compte malgré qu’ils soient dans le groupe ?
Est ce que cela vient du fait que j’ai pas mis en place le mécanisme de template decluttering ?
Salut.
Le code qui ‹ compte › c’est du jinja… Ça marche peu importe le type de carte.
Par contre, ça dépend grandement du statut du volet… Si ton velux ne retourne pas les infos avec les états qui servent à compter (comme les somfy) alors ça s’explique. Il faut donc vérifier /comparer
J’ai bien l’attribut current_position, j’ai bien l’état open donc je devrais pouvoir compter les velux open ou closed ?
Je n’ai pas le moving par contre mais sur tous les volets donc j’ai supprimé.
Pour les partiellement ouvert il faut que je regarde si la position est différente à la fois de 0 et de 100. Je n’ai pas encore trouvé comment faire le ET grrr les début toujours difficile pour se mettre en selle.
Le jinja n’est pas encore assimilé il faut que je me penche encore plus sur les bases et les tutos.
Ce qui est cool c’est qu’il y a plein de choses à apprendre : patience est le mettre mot, découverte est une envie