/ Home Assistant

Intégration des bus/tramway sous Home Assistant

Pour intégrer les horaires de bus, tramway, métro, ... Home Assistant met en place les sensors gtfs, voyons ensemble comment les mettre en place.

Tout d'abord il faut se prémunir d'une archive au format gtfs de la ville concerné.
L'archive est au format zip est contient différents fichiers en extension .txt qui recensent au format xml : les lignes, les arrêts, les horaires, ...

Home assistant avec la déclaration du sensor gtfs va générer une base sql à partir des fichiers disponibles dans l'archive.

On prendra comme exemple la ville de Bordeaux.

Récupération de l'archive GTFS de Bordeaux

On se rend sur le site OpenDATA de bordeaux métropole https://data.bordeaux-metropole.fr/data.php?themes=10

On clique sur le thème : "offre de service bus" et/ou "offre de service tramway" (on peut très bien avoir 2 sensors qui pointent soit sur la même archive soit sur 2 archives différentes).
Pour ma part je n'ai besoin que des bus.

Une fois sélectionné, sur la partie droite on a l'archive GTFS on clique dessus et on la télécharge.

Une fois récupéré on crée un répertoire gtfs dans le repertoire racines de homeassistant et on y place l'archive.

pour moi l'archive se nomme keolis_bus.zip.

Recherche des stations dans l'archive

Les stations sont référencées dans le fichier stops.txt.

La partie la plus compliquée est de trouver la bonne référence pour la station de départ et d'arrivée, je vous conseille d'utiliser les champs de coordonnées et de recouper avec Google Maps pour valider qu'il s'agit des bonnes stations.

A noter que les stations sont définies plusieurs fois par des numéros ou des noms de station. Ayant fait le test de mon coté seules les entités avec un numéro fonctionnent.

Quand on a trouvé la bonne station on note le premier champs (c'est celui que l'on utilisera pour configurer Home assistant).

Une fois récupéré ce champs pour les stations de départ et d'arrivée, on configure HA.

Configuration Home Assistant

Dans le fichier sensor.yaml :

 - platform: gtfs
  origin: 1234
  destination: 4567
  data: keolis_bus.zip
  name: ligne2
- platform: gtfs
  origin: 1234
  destination: 7890
  data: keolis_bus.zip
  name: ligne5

On a plus qu'a déclarer sensor.ligne2 et sensor.ligne5 dans notre configuration.yaml pour les voir s'afficher.

Intégration des bus/tramway sous Home Assistant
Share this