Niveau débutant
Bonjour , je commence à implémenter Home Assistant et j’aurai voulu avoir votre avis concernant la meilleure manière de le configurer?
À l’heure actuelle, il me semble observer une tendance à utiliser l’interface graphique pour la plupart des configurations et à s’éloigner de l’édition directe des fichiers YAML
A titre d’exemple , je réalise un tableau de bord pour suivre une machine à laver via une prise connectée.
Il me semble que créer une fichier package.yaml spécifique pour cette application me permettrait de pouvoir faire une maintenance plus facile du fait que tous les objets ( helper , devices , automations , scripts et sensors ) sont dans un même fichier et qu’il est facile à dupliquer pour créer une autre application similaire ( seche linge par exemple ) dans la même instance de Home assistant ou de la migrer d’une instance de test vers un système de production . Néanmoins ceci me semble à rebours de la tendance à l’utilisation de l’interface graphique ?
En particulier lorsque on utilise l’interface graphique d’automatisation pour créer ou modifier des automatisations, le système peut utiliser des identifiants internes pour les appareils et les entités qui diffèrent du format domain.entity_id . Ces identifiants, souvent des chaînes alphanumériques, représentent des identifiants uniques attribués à chaque entité ne sont pas accessible via les developer tools ?
Une question complémentaire , il semble y avoir 2 méthodes pour créer un sensor :
Soit
Dans sensors.yaml :
platform: template
sensors:
soit dans configuration.yaml :
template:
sensor:
Je ne comprends pas la différence entre ces 2 possibilités ? Pourriez-vous m’aider ?
Ma configuration
System Information
version
core-2024.4.3
installation_type
Home Assistant OS
dev
false
hassio
true
docker
true
user
root
virtualenv
false
python_version
3.12.2
os_name
Linux
os_version
6.6.25-haos
arch
x86_64
timezone
Europe/Brussels
config_dir
/config
Home Assistant Community Store
GitHub API
ok
GitHub Content
ok
GitHub Web
ok
GitHub API Calls Remaining
4977
Installed Version
1.34.0
Stage
running
Available Repositories
1400
Downloaded Repositories
2
HACS Data
ok
Home Assistant Cloud
logged_in
false
can_reach_cert_server
ok
can_reach_cloud_auth
ok
can_reach_cloud
ok
Home Assistant Supervisor
host_os
Home Assistant OS 12.2
update_channel
stable
supervisor_version
supervisor-2024.04.0
agent_version
1.6.0
docker_version
25.0.5
disk_total
30.8 GB
disk_used
6.2 GB
healthy
true
supported
true
board
ova
supervisor_api
ok
version_api
ok
installed_addons
Advanced SSH & Web Terminal (17.2.0), Studio Code Server (5.15.0), ESPHome (2024.3.2), File editor (5.8.0)
de toutes manières, l’interface graphique fait du yaml.
une automatisation ira dans automations.yaml
tu peut éditer ton automatisation avec l’interface graphique et basculer en yaml, faire du copier/coller etc. tu peux même depuis l’UI dupliquer ton automatisation machine à laver et la sauvegarder en seche linge.
avec la découpe en différents fichiers genre
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
template: !include templates.yaml
mqtt: !include mqtts.yaml
recorder: !include recorders.yaml
et ainsi de suite !!!
tu peux facilement éditer et copier/coller tes entrées. attention à toujours checker que ton système est OK avant de rebooter !!!
mais sinon, si tu veux travailler avec des modules et des répertoires, c’est possible aussi.
dans tous les cas il y a du pour et du contre.
Bonjour Bentou ,
je n’avais pas vu que via L’UI il y avait la possibilité de dupliquer .
Cela étant , il faut creer en plus les differents helpers via l’UI .
Il n’y a pas la possibilité de définir un objet machine à laver qui contiendrait toutes les variables ?
En ce qui concerne l’automatisation via l’UI , il utilise des identifiants internes ( dans le yaml)
exemple : platform: device
device_id: 35e584536f307b15482c84038f06d121
entity_id: ef885c5c39df85373a599ea6d41654ee
domain: sensor
comment retrouver en clair cette entitée ?
J’ai mis du temps à trouver, mais pour les device_id, lorsque tu navigues vers la page du device sur ton browser, le device_id est lafin de l’adresse web:
Merci Gilles2 , reste à trouver le entity_id: ef885c5c39df85373a599ea6d41654ee.
J’ai remplacé dans le fichier yaml le entity_id ( clé alphanumerique ) par « sensor.machine_a_laver_consommation_actuelle » et cela a l’air de fonctionner . Dans ce cas je suppose que je peux supprimer le device_id ?
Lorsque tu modifies ton automatisation via l’interface, il ne faut pas choisir Appareil, mais Entité. Ainsi, il n’y aura aucun id, mais directement le nom de l’entité.
non, c’est impossible, tu ne peut avoir qu’une seule mqtt: (en début de ligne, sans indentation dans le fichier configuration.yaml).
ou alors, mqtt: !include_dir_list ... pour ajouter des fichiers et des sous répertoires. mais bonjour le travail d’analyse avant.
voir Splitting up the configuration - Home Assistant