• Post author:
  • Post published:26 juin 2020
  • Post category:Général

Organisation du fichier configuration.yaml

Introduction.

Home Assistant permet d’ajouter des intégrations, des capteurs et pleins d’autres choses de plusieurs manières.

N’étant pas un expert Home Assistant mais un vrai débutant, j’étais un peu perdu au début.

Je vais essayer de vous parler des différentes manières de structurer votre configuration.yaml.

Mise à jour : 26/06/2020 – Temps de lecture / alisation : 9 / 05 min – Difficulté : Faible.

To do :

  • Mise a jour du liens Xiaomi.

Prérequis, matériels nécessaires & utilisés :


Organiser sa configuration.

1ère méthode configuration.yaml seul.

Dans cette première méthode, tout se met dans configuration.yaml, c’est la méthode la plus simple mais elle deviendra de plus en plus compliqué à gérer au fur et à mesure que votre domotique s’agrandit.

Donc je pense quelle est plus simple au début, mais il faudra passer à la deuxième méthode très rapidement. Autant bien structurer dés le début.

2ème méthode configuration.yaml et fichiers annexes.

Via cette méthode, vous allez pouvoir séparer votre configuration.yaml et lui ajouter des fichiers annexes (sensors.yaml, plants.yaml, input_booleen.yaml, etc).

Chaque ‘intégration HA’ peut avoir son fichier associé, (notify, sensors, etc).

Cette méthode est la plus utilisée car elle permet de s’y retrouver plus facilement.

Elle permet aussi, une chose que j’ai découverte récemment, l’ajout d’un dossier packages rempli de fichiers nomdevotrefichier.yaml permettant de centraliser tous ce qui concerne un sujet par exemple.

Cette méthode est utilisée dans l’article sur l’intégration du matériels Xiaomi.

Comment ajouter un fichier type.yaml.

Nous allons ajouter le fichier sensors.yaml qui contiendra tous nos senseurs que nous ajouterons à la main. Comme ça, si nous devons faire une modification sur un senseur que nous avons créé, il faudra se rendre dans ce fichier.

Dans File editor, configuration.yaml ajouter ceci au début du fichier à la suite de ceux existant.

sensor: !include sensors.yaml

Créer maintenant le fichier sensors.yaml.

Dans File Editor cliquer sur le dossier en haut à gauche puis sur l’icône ajouter un fichier.

Donner un nom à votre fichier, sensors.yaml ici.

Ouvrez-le puis ajouter vos senseurs sans la ligne suivante, car Home Assistant sait déjà que c’est des senseurs que vous déclarez ici.

sensor:

Exemple de fichier sensors.yaml.

## Raspbery Pi
  - platform: systemmonitor
    resources:
      - type: disk_use_percent
        arg: /home
      - type: memory_use_percent
      - type: swap_use_percent
      - type: processor_use
      - type: last_boot

  - platform: sonarr
    host: !secret host_serveur
    api_key: !secret apisonarr
    monitored_conditions:
      - series
      - upcoming
      - wanted
      - queue
      - commands
      - diskspace
    unit: TB
    days: 360
    
  - platform: sonarr_upcoming_media
    api_key: !secret apisonarr
    host: !secret host_serveur
    port: 8989
    ssl: false
    days: 360
    max: 10
    
  - platform: radarr
    host: !secret host_serveur
    api_key: !secret apiradarr
    monitored_conditions:
      - status
      - movies
      - upcoming
      - commands
      - diskspace
    unit: TB
    days: 360

Comment utiliser les fichiers package.yaml.

Comme dit plus haut cette méthode est très intéressante lorsqu’il s’agit de centraliser , input*, scènes, scripts, automations, customisations, etc., qui concernent un seul sujet.

Exemple : Panneau de commande de la Gateway Xiaomi ou la gestion de votre alarme.

Dans configuration.yaml, ajouter ceci.

homeassistant:
  packages: !include_dir_named packages

Suivre la méthode décrite au dessus, mais pour ajouter un dossier nommé packages.

A l’intérieur de ce dossier, créer un fichier (exemple gatewayxiaomi.yaml) puis saisissez les différentes choses que vous souhaitez y mettre.

input_boolean:
### Input boolean pour couper le son du gateway ###
  jouer_sonneries_gateway:
    name: Play
    icon: mdi:play
### Input boolean pour stop le son du gateway ###
  stop_sonneries_gateway:
    name: Stop
    icon: mdi:stop
### Input boolean pour ajouter un nouveau device à la gateway ###
  ajout_device:
    name: Ajout Device
    icon: mdi:plus-circle

input_number:
### Input slider pour contrôler le volume du gateway ###
  volume_gateway:
    name: Volume
    initial: 1
    min: 1
    max: 100
    step: 1
    icon: mdi:volume-high
   
input_select:
### Gateway Xiaomi Liste des Sons.
  sonneries_gateway:  ##id de votre input select  
    name: Sonneries Gateway ## frendly name en gros
    options: 
      - "0 - Police car 1" ## Liste des sons disponnibles
      - "1 - Police car 2"
      - "2 - Accident"
      - "3 - Countdown"
      - "4 - Ghost"
      - "5 - Sniper rifle"
      - "6 - Battle"
      - "7 - Air raid"
      - "8 - Bark"
  #    - "9 - None"
      - "10 - Doorbell"
      - "11 - Knock at a door"
      - "12 - Amuse"
      - "13 - Alarm clock"
  #    - "14 - None"
  #    - "15 - None"
  #    - "16 - None"
  #    - "17 - None"
  #    - "18 - None"
  #    - "19 - None"
      - "20 - MiMix"
      - "21 - Enthusiastic"
      - "22 - GuitarClassic"
      - "23 - IceWorldPiano"
      - "24 - LeisureTime"
      - "25 - ChildHood"
      - "26 - MorningStreamLiet"
      - "27 - MusicBox"
      - "28 - Orange"
      - "29 - Thinker"
#      - "10001 - Perso1" ## si vous ajouter des sons perso depuis Mi Home
#      - "10002 - Perso2"
    initial: "1 - Police car 2"    
    icon: mdi:music-note ## Icône de https://materialdesignicons.com/
   
    
automation:
## Jouer Sonnerie
- id: jouer_sonnerie_gateway
  alias: Jouer sonnerie
  initial_state: true
  trigger:
  - platform: state
    entity_id: input_boolean.jouer_sonneries_gateway
    to: 'on'
  action:
  - service: xiaomi_aqara.play_ringtone
    data_template:
      gw_mac: 78:11:DC:B2:47:43
      ringtone_id: '{{ states.input_select.sonneries_gateway.state.split(''-'')[0]
        }}'
      ringtone_vol: '{{ states.input_number.volume_gateway.state|int }}'
  - delay: '10'
  - data: {}
    entity_id: input_boolean.jouer_sonneries_gateway
    service: input_boolean.turn_off

## Stopper la Sonnerie
- id: stopper_sonnerie_gateway
  alias: Stopper sonneries
  initial_state: true
  trigger:
  - platform: state
    entity_id: input_boolean.stop_sonneries_gateway
    to: 'on'
  action:
  - service: xiaomi_aqara.stop_ringtone
    data_template:
      gw_mac: 78:11:DC:B2:47:43
  - delay: '1'
  - data: {}
    entity_id: input_boolean.stop_sonneries_gateway
    service: input_boolean.turn_off

## jouter un Devices
- id: ajouter_devices_gateway
  alias: Ajout Devices
  description: ''
  trigger:
  - entity_id: input_boolean.ajout_device
    from: 'off'
    platform: state
    to: 'on'
  condition: []
  action:
  - service: xiaomi_aqara.add_device
  - delay: '10'
  - data: {}
    entity_id: input_boolean.ajout_device
    service: input_boolean.turn_off

Comme vous pouvez le constater, il y a toutes les données concernant la gateway Xiaomi, ce qui est très utile lorsque l’on modifie le nom d’un bouton par exemple ou d’une scène, sans devoir parcourir tous les fichiers des différents emplacements.

NOTA : Les composants que vous mettez dans le nomdevotrefichier.yaml ne doivent plus figurer dans un autre fichier sinon vous allez avoir des erreurs de fichier configuration.yaml.


Conclusion.

Nous venons de voir de manière simple comment peut se construire la configuration de notre Home Assistant. Organiser votre installation dès le début cela vous évitera de perdre du temps par la suite.


Vous souhaitez signaler un erreur, partager votre configuration ou ajouter un matériel fonctionnant ? Cliquez sur les boutons ci-dessous.


Trucs & astuces.

Erreurs les plus fréquentes.

Faites bien attention aux noms que vous donnez à vos fichiers et à ceux que vous rentrez dans le configuration.yaml.

Pensez aussi à bien vérifier l’indentation de vos fichiers, les erreurs viennent souvent de ça.

Mise à jour : (détails)

26/06/2020 :

  • Publication Officielle. (McFly)

23/05/2020 :

  • Correction (McFly)
  • Images Fichiers Médias.

21/05/2020 :

  • Correction (evenisse)

17/05/2020 :

  • Correction et mise en page. (McFly)

12/05/2020 :

  • Création de l’article.

Sources.

Organisation du fichier configuration.yaml