Historiser des valeurs de capteurs Home Assistant dans Airtable

De Wiki de Mémoire Vive
Révision datée du 6 septembre 2023 à 09:40 par 192.168.2.1 (discussion)
Aller à la navigation Aller à la recherche

Airtable est un outil cloud qui permet de gérer facilement des bases de données, typiquement avec des tables et des relations. Sans programmation.

Par ailleurs, Home Assistant permet d'exploiter des capteurs d'ouverture, de température, de présence, etc.

On peut souhaiter historiser dans une base de données des valeurs remontées par Home Assistant. Par exemple, chaque jour la température relevée au lever du soleil.

Pour cela, on crée une automatisation dans HA, et dans son déclenchement on inclut une action pour aller écrire dans Airtable. Parallèlement, on pourra ainsi consulter les valeurs enregistrées.

Une autre solution consiste à utiliser une base de données intégrée à HA mais Airtable peut être intéressant, par exemple si on a plusieurs plateformes HA. Dans ce cas il sera possible de consolider les données de plusieurs sources, par exemple pour les températures relevées à différents domiciles !

Cela pourrait être un sujet d'atelier, une fois que différents adhérents auront mis en œuvre leur propre domotique. Ce serait un bon moyen de se familiariser avec les automatisations.

Denis

Exemple de script YAML (dans configuration.yaml) qui crée un service d'enregistrement avec un champ OUVERTURE, la date étant renseignée automatiquement dans Airtable,

# pour écrire dans Airtable    
rest_command:
 ajouter_enregistrement_airtable:
   url: "https://api.airtable.com/v0/appw9KLcx9Y2Hj0uf/logporte "
   method: post
   headers:
     Authorization: "Bearer pattPiKMi6R3GQBG5.21006f5aebe224bda60ab2fd70cxxxxxxxxxxxxx76693ce8c226ef0e83bfa532"
     Content-Type: "application/json"
   payload: '{"fields": {"Porte Phie-garage": "OUVERTURE"}}'


A noter, un script analogue peut être testé avec une commande curl sur une fenêtre Terminal,

curl -X POST "https://api.airtable.com/v0/appw9KLcx9Y2Hj0uf/logporte" ^
-H "Authorization: Bearer pattPiKMi6R3GQBG5.21fc3xxxxxxxxxxxxxxxxx3c5236d4df588469bd0be42d7fa98541250be5fb9e" ^
-H "Content-Type: application/json" ^
-d "{\"fields\": {\"Porte Phie-garage\": \"OUVERTURE\"}}"