Comprendre et déchiffrer les erreurs d'un Package

Salut @Yoyouri

il te manque une")" à la valeur default, ça devrait être :

{{ float(states('sensor.legrand_consommation_base') | default(0) | round(2) }}

Bonjour

Bien vu
Mais j’ai quand encore une l’erreur


Logger: homeassistant.config
Source: config.py:596
First occurred: 07:34:32 (1 occurrences)
Last logged: 07:34:32

Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 410: invalid template (TemplateSyntaxError: unexpected '}', expected ')') for dictionary value 'sensor->1->state', got "{{ float(states('sensor.legrand_consommation_base') | default(0) | round(2) }}"

Oups il manque encore une, tu peux essayer cette version :

{{ states('sensor.legrand_consommation_base') | float(default=0) | round(2) }}

Merci, cela semble être bon
Il me reste les erreur cité dans ma réponse numéro 19 et cela

Il manque un :

{% endif %}

à placer en dernier, en dessous de Heure Creuse.

Je viens de le faire, mais je ne peux pas redémarrer HA car il annonce cette erreur

Échec du redémarrage de Home Assistant
The system cannot restart because the configuration is not valid: Error loading /config/configuration.yaml: while parsing a block mapping in "/config/packages/package_legrand_ecocompteur.yaml", line 304, column 7 expected <block end>, but found '-' in "/config/packages/package_legrand_ecocompteur.yaml", line 342, column 7

Surement indent pas bon espace devant le - ( vont par deux regarde les lignes du dessus pour voir si 2 ou 4 espaces )

ATTENTION IL Y A D’AUTRES ident à reprendre plus bas , regarde bien dans l’ éditeur il te donnera les lignes en erreurs !

Tes ident sont référencé par rapport au template avec sensors !
de la ligne 302

template:
  - sensor:

donc tout ce qui est déclaré ensuite avec - doit être au même niveau que celui du sensor !


# Puissance Souscrite ⛔ICI LIGNE 341 ?
  - name: "Legrand Puissance Souscrite"
    unit_of_measurement: 'kVA'
    state: >-
      {% set i = states('sensor.legrand_intensite_souscrite') | float(default=0) %} 
      {{ ( i / 5 ) | round(2) }}
# Calcul Consommation Totale (Base)⛔ICI LIGNE 407 ?
  - name: "Legrand Consommation Totale"
    unit_of_measurement: "kWh"
    state: >-
      {{ float(states('sensor.legrand_consommation_base') | default(0 | round(2) }}

et en suivant vers ligne 428 → 438 et plus jusqu’au changement avec la platform Utilty meter ligne 652 ?

message si pas modifié les lignes en erreurs , quand tu fais avec Editor

bad indentation of a mapping entry (428:7)

 425 |    #####################################
 426 | 
 427 | # Sensor Input Text Abonnement
 428 |       - name: "Legrand Prix Abo"
-------------^
 429 |         unit_of_measurement: "€"
 430 |         state: >-

C’est assez parlant !
Mais c’est vrai que si tu transfert un fichier vers autres il faut bien regarder ces identations !

2 « J'aime »

Merci, cette fois HA a pu redémarrer
mais une fois en route je me retrouve avec cette erreur que j’avais déjà eu précédemment

Logger: homeassistant.config
Source: config.py:596
First occurred: 10:19:33 (9 occurrences)
Last logged: 10:19:33

Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 436: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 437: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 438: 'state' is an invalid option for 'template', check: state
Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 496: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 497: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 498: 'state' is an invalid option for 'template', check: state
Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 519: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 520: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 521: 'state' is an invalid option for 'template', check: state
Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 543: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 544: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 545: 'state' is an invalid option for 'template', check: state
Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 567: 'name' is an invalid option for 'template', check: name Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 568: 'unit_of_measurement' is an invalid option for 'template', check: unit_of_measurement Invalid config for 'template' at packages/package_legrand_ecocompteur.yaml, line 569: 'state' is an invalid option for 'template', check: state

le mieux pour voir ton erreur ( de classe je suppose !) c’est de passer par l’UI
image
image


image
puis tu avs sur
image
image
et dans
image
tu rentre la formule de ta ligne de calcul !
pour 438

{{ states('input_text.legrand_prix_kwh_base') | default(0) | round(2) }}

et tu essai de mettre ce qu’il faut comme unité et le reste, je crois si €, il faut solde en Classe d’appareil !
MAIS IL FAUDRAIT CHOISIR LE EUR/kWh je crois dans ton cas ?
si la définition est bonne [ sans erreur donnés]
tu devrais voir un truc comme cela avec la valeur en bas


ATTENTION CELA EST UN TEST SUR UN DE MES SENSORS !

si tu fais une erreur il te le dit …
ICI j’ai ajouté le Nb virgule avec erreur sur le round
image
on voit bien qu’il dit un bug (j’ai mal écrit round)

tu n’es pas obligé de valider ce template, mais t’en servir pour corriger es tiens en adaptant le modele

1 « J'aime »

Merci pour ces explications claires
voila le résultat

Du coup que faut-il faire ?

là dans ce cas la valeur de ton sensor , n,'est pas encore dispo ?, a vérifier dans les états !

Même si ta formule est juste tu devrais prendre le EUR/kWh c’est plus parlant vu le message du sensor ‹ prix_kwh_base ›
Attention les icones sont automatique suivant les classes, mais tu peux changer ! si effectivement tu passes par l’UI.

PS

pourquoi un input text, et plus-tôt pas input number ? lors de la déclaration ?

D’ailleurs je comprends pas trop, le pourquoi de ce calcul, si c’est toi qui a créé l’ input ?

Je n’ai rien créé, c’est un code récupéré sur le forum international comme indiqué dans mon post initial

Je souhaite pouvoir utiliser l’ensemble des fonctions de celui-ci mais depuis sa création HA a évolué et du coup tous ne fonctionne pas comme avant malheuresement

Il faut alors créé les inputs sinon seront indisponible, là c’est sûr !
Et surtout regardé ou sont les références à ces input_text , si dans calcul ou Dashboard Energy ?

On voit un peu qu’il a créé ces input_text pour le Dashboard !

Petite question sans méchanceté.
As tu compris le code que tu as copié ?
On t’a corrigé, pointé vers les docs.
Dans ton code sont référencés des input. Les as tu créés ?
Je t’ai proposé de partir sur un fichier propre en supprimant les commentaires pour y voir plus clair. Mais a force de ne pas écouter tu tourne en boucle sur des soucis.
Pose calmement ton fichier et fait pas a pas.

1 « J'aime »

A la lecture du package, effecivement je me posais la question de d’où sont issu ces prix, du coup si je comprends bien il faut que je crée un carte avec ces entités !

une partie oui (la récup des données du JSON)

mais la suite franchement non et même après avoir lu la doc, car trop de paramètre et surtout pour la partie calcul

Soit indulgent avec les nouveaux ! :innocent: sans rancune !
C’est vrai que copier un code ? puis adapter !
Mais les commentaires servent pour celui qui veut corriger ou comprendre …

pour comprendre il faut les commentaires !
Et surtout tu as un mode développement dans HA pour faire des tests, et aussi les templates dans l’UI comme montré ci-dessus !