Home Assistant : Intégrer les vacances scolaires, les jours fériés et les saisons

home-assistant-integrer-vacances-scolaire-jours-feries-saisons

Aujourd’hui je suis fier de vous partager mon premier tutoriel sur le site, ça me fais plaisir d’être derrière l’écran et être celui qui rédige. Rentrons dans le vif sujet, il y a quelque temps j’ai voulu intégrer les saisons, les jours fériés et les vacances scolaires pour l’ouverture de mes volets. Après de nombreuses recherches, j’ai trouvé une API qui permet de récupérer toutes les infos dont nous avons besoin (Merci Domogeek !). Avec une personne du groupe facebook, nous avons adapté pour faire fonctionner celle-ci sur notre cher Home assistant. Je vous partage donc les étapes pour configurer et utiliser l’API sur votre serveur domotique. 

Home Assistant : Création des capteurs

A l’aide de l’add-on file editor, rendez-vous sur le fichier configuration.yaml puis ajoutez les différents capteurs suivants :

home assistant sensor season holidays Cela peut-être incompréhensible pour beaucoup mais ne vous inquiétez pas ! Nous indiquons sous forme de capteurs à Home Assistant l’URL de l’API utilisée ainsi que le format des données. Nul besoin de comprendre, il vous suffit de copier/coller le code ci-dessous puis de remplacer la lettre correspondant à votre zone (A, B ou C).
Si la ligne sensor: est déjà présente dans votre fichier configuration.yaml, ajoutez les lignes suivantes à la suite sinon votre configuration ne sera pas valide. De plus, veillez à bien respecter l’indentation.
Zone Ahttp://domogeek.entropialux.com/schoolholiday/A/now/json
Zone Bhttp://domogeek.entropialux.com/schoolholiday/B/now/json
Zone Chttp://domogeek.entropialux.com/schoolholiday/C/now/json
Pour scan_interval ne modifiez pas la valeur car par défaut Home Assistant fait une requête toutes les 30 secondes. Cela est beaucoup dans notre cas, c’est pourquoi nous allons mettre en place une automatisation pour mettre à jour toute les nuits les sensors.
sensor:
  - platform: season
  - platform: rest
  name: Vacances
  force_update: true
  json_attributes:
  resource: http://domogeek.entropialux.com/schoolholiday/B/now/json
  value_template: '{{ value_json.schoolholiday }}'
  scan_interval: 108000 
  headers: 
   User-Agent: Home Assistant
   Content-Type: application/json
  - platform: rest
  name: Férié
  force_update: true
  json_attributes:
    - holiday
  resource: http://domogeek.entropialux.com/holiday/now/json
  value_template: '{{ value_json.holiday }}'
  scan_interval: 108000 
  headers: 
   User-Agent: Home Assistant
   Content-Type: application/json

Une fois le code copier/coller nous allons donc redémarrer Home Assistant.

reebot ha

Lovelace : Ajout d’une carte affichant les capteurs

home assistant sensor season holidays Ce qui donne : home assistant capteurs saisons feries vacance Alors maintenant qu’on a fait le plus dure reste a utiliser ça dans une automatisation.

Home Assistant : Création de l’automatisation

Vacances et jours fériés

Si je souhaite que la condition soit « Nous somme en vacance » alors nous ajoutons le Pas car le sensor ne retournera pas False :

automatisation home assisant vacances

Si au contraire « nous somme pas en vacances » le sensor retournera False. J’écris donc ma condition ainsi :

automatisation home assistant vacances

Pour les jours fériés cela reste le même principe.

Les saisons

Passons maintenant à l’utilisation des saisons. Il suffit de faire tout simplement comme ceci : automatisation home assistant saisons
Attention les saisons sont en anglais dans les automatisations.
  • summer = été
  • spring = printemps
  • autumn = automne
  • winter = hiver

Mise à jours des capteurs

Pour finir nous allons mettre en place une automatisation qui mettra à jour à 02h00 tous les jours les capteurs.
La mise à jour toutes les 30 secondes est donc inutile dans notre cas. Une fois par jour (ici à 2h du matin) suffit.
  alias: update domogeek
  description: ''
  trigger:
  - at: 02:00:00
    platform: time
  condition: []
  action:
  - data: {}
    entity_id: sensor.vacances, sensor.ferie
    service: homeassistant.update_entity
  mode: single


Vous pouvez dorénavant profiter des vacances scolaires, des jours fériés et des saisons pour améliorer vos différentes automatisations ! 😀 N’hésitez pas à laisser un commentaire ou nous rejoindre sur le groupe facebook si vous avez des questions.

3 Commentaires

  • Bonjour, j’ai bien suivi le tuto jusqu’a « Ajout d’une carte affichant les capteurs » et là je bloque, comment faire pour ajouter une carte car je n’ai pas la même chose impossible de trouver « sensor.season », « sensor.vacances » et  » sensor.ferie »
    Comment faire pour les trouver ?
    Merci d’avance

  • On peux aussi y ajouter la saint du jour :

    – platform: rest
    name: Saint du jour
    force_update: true
    json_attributes:
    resource: http://api.domogeek.fr/feastedsaint/now/json
    value_template: ‘{{ value_json.feastedsaint }}’
    scan_interval: 108000
    headers:
    User-Agent: Home Assistant
    Content-Type: application/json

    Par contre cela récupère les noms en anglais pour « Catherine » on as « Katy ».
    :/

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Suggestions