Où sont les fichiers .py des composants?

Bonjour à tous,

Question probablement bête mais je ne trouve pas les fichiers qui se trouvent dans :
image

Où sont ils sur notre Home Assistant à nous ?

Je voudrais tester un truc dans
image

Mais je n’arrive pas à le localiser.

Merci

Salut @Sigalou

Je sais plus quel type d’install tu as, mais sous docker (une fois dans le container) ça se trouve là :

/usr/src/homeassistant/homeassistant/components

Salut,

Au risque de passer pour un gros bourrin, éditer les fichiers dans les containers … c’est pas l’idée du siécle.

1 « J'aime »

Très mauvaise idée de procéder comme ça ! Il faut utiliser la surcharge ! Tu rapatries le code de l’intégration depuis le github de ha, tu le modifies comme tu veux et tu le mets dans custom_components. Il te suffit ensuite de supprimer l’intégration seventeentrack déja configuré, redémarrer HA puis la reconfigurer et là il utilisera ta version que tu as mis dans custom_components et non la version standard fourni avec ha :wink:

Par curiosité tu vas modifier quoi ? car j’utilise cette intégration mais elle est très rustique à mon goût !

2 « J'aime »

Merci pour ton conseil de méthode.

Je voudrais essayer 3 trucs :

Aller chercher le sous status

Voir si je peux basculer la langue (il y a FR) :
image

Voir pourquoi les icones ne sont pas changeantes, elles toujours bloquées à mdi:package
image
ça ressemble à un truc que le développeur avait pensé mais sur lequel il n’est pas allé jusqu’au bout.

J’ai bien récupéré les fichiers et tout mis dans :
image
Le souci c’est que cette intégration n’est pas configurée par l’interface graphique et n’apparait pas sur la page /config/integrations, elle est configurée en yaml dans sensors (platform: seventeentrack) :
image
Comment je dis à HA d’aller chercher dans custom_composents et non dans la version standard fournie avec ha ?

sinon je peux tenter de changer le nom mais c’est pas top et je ne sais pas si le nom de l’extension se cale automatiquement au nom du dossier… je ne suis pas encore allé creuser cet aspect de HA

De mémoire, si tu veux modifier le nom, je changerai le nom du dossier dans custom_components et « domain » / « name » dans le fichier manifest.json de ton intégration personnalisée.

{
  "domain": "sevensigalou",
  "name": "sevensigalou",
  "codeowners": [],
  "documentation": "https://www.home-assistant.io/integrations/seventeentrack",
  "iot_class": "cloud_polling",
  "loggers": ["py17track"],
  "requirements": ["py17track==2021.12.2"]
}

Et ensuite dans ton confiiguration.yaml :

sensor:
  - platform: sevensigalou
    username: EMAIL_ADDRESS
    password: YOUR_PASSWORD

Il y’a peut-être d’autres choses à faire, mais la dernière fois que j’ai joué à ça remonte à pas mal de temps.

non, j’ai testé cela, mais ça n’a pas fonctionné. J’ai un message comme quoi l’integration n’existe pas.

Pour pouvoir l’utiliser en custom_components il faut ajouter une ligne dans le fichier manifest.json :

"version": "0.1",

Juste avant "requirements": ["py17track==2021.12.2"]

Pas besoin de changer le domain sauf si besoin d’avoir l’intégration officielle et la custom en parallèle

Toute intégration dans custom_components dont le nom existe déjà en officielle prend le dessus sur l’officielle.

1 « J'aime »

ok, je teste ça, je redémarre et te dis
image

Exact, j’ai retrouvé ce que j’avais fait à l’époque pour tuner l’intégration « folder » officielle.

Et comme je gardais les 2 en // ça donnait ça à l’époque :

{
  "domain": "herbsfolder",
  "name": "Herbsfolder",
  "documentation": "https://www.home-assistant.io/integrations/folder",
  "version": "1.0.0",
  "codeowners": []
}

oui impec, merci les gars, j’ai juste ajouté la ligne de la version et c’est l’intégration personnalisée qui est prise en compte.
Je vais pouvoir faire mes tests…

J’ai vu aussi qu’on pouvait avoir une fonction d’ajout d’un N° de tracking et ce n’est pas programmé dans l’intégration.

2 « J'aime »

Désolé j’ai encore besoin de vous, on fait comment pour activer les logs pour avoir les infos _LOGGER.debug(« … ou _LOGGER.error( » ??? et où les lit on ?

Je sais activer le log sur une intégration puis arrêter et lire le log :
image

Mais je ne sais pas le faire pour une intégration « maison » ou qui n’est pas dans les intégrations de la page /config/integrations

Merci :kissing_heart:

Dans la conf yaml il faut ajouter :

logger:
  default: warning
  logs:
     custom_components.seventeentrack: debug

Ensuite ils seront dans le fichier de log de HA : Paramètres > systèmes > log

1 « J'aime »

Oui pouvoir ajouter/supprimer les suivis directement dans HA ça serait tip top et si t’as besoin d’un cobaye pour tester je suis ton homme :smiley:
Pouvoir modifier la périodicité de rafraichissement des suivis serait bien aussi mais je crois que c’est une restriction des comptes gratuits seventeentrack :confused:

J’ai lu quelque part que c’était actualisé toutes les 6h. C’est pas la paradis mais pour savoir chaque jour où en est ton suivi, ça passe.

Je ne sais pas si on pourra, l’intégration est elle même appuyée sur un script python d’un autre développeur…

Je regarde quand même…

C’est bien ca , update toute les 6h. Tu peu forcer manuellement sur le site toutes les 4-5h.

oui et effectivement la lib python ne permet pas de modifier ça par contre il y a bien la fonction pour ajouter un colis dans la liste de suivi :wink: et peut-être ajouter un service à l’intégration à qui on passerait en paramètre le numéro du colis et son « petit » nom ?
Merci

1 « J'aime »