Intégration domotique Transport for London, gratuite et open source

Métro, Overground, DLR, Elizabeth line, tram et bus de Londres : état des lignes, prochains passages
L'état de vos lignes londoniennes et les prochains passages à vos arrêts dans Gladys : métro (Tube), London Overground, DLR, Elizabeth line, trams et bus, en temps réel.
Les données viennent de l'API Unified de TfL, l'open data de Transport for London : pas de compte, et une clé gratuite facultative. Powered by TfL Open Data. Cette intégration n'est pas affiliée à Transport for London.
Ce que vous obtenez
- Un appareil par ligne suivie : son état tel que TfL le formule (« Retards légers », « Fermeture partielle »…), un niveau de perturbation de 0 à 3, une perturbation oui/non et le motif donné par TfL.
- Un appareil par arrêt suivi (une station de métro, DLR, Overground, Elizabeth line ou tram, ou un arrêt de bus), avec un filtre facultatif de lignes et de direction : minutes avant le prochain passage et le suivant, ligne et destination du prochain, et si l'une de ses lignes est perturbée.
- Deux widgets : les prochains passages d'un arrêt, et l'état de vos lignes suivies.
- Deux déclencheurs de scène : état d'une ligne modifié (perturbée, aggravation, amélioration, retour à la normale) et c'est l'heure de partir (1 à 20 minutes avant un passage).
- Deux actions de scène : lire les prochains passages d'un arrêt, lire l'état d'une ligne, chacune avec une phrase prête à envoyer par message ou sur une enceinte.
Prérequis
- Gladys Assistant 5.1.0 ou plus récent.
- Un accès à Internet depuis la machine Gladys (l'intégration appelle
api.tfl.gov.uk). - Facultatif : une clé d'application TfL gratuite, sur le portail API de TfL (créez un compte, puis abonnez-vous au produit « 500 Requests per min »). Sans elle, l'intégration utilise le quota anonyme, suffisant pour quelques lignes et arrêts.
Installation
- Dans Gladys, ouvrez Intégrations → Installer depuis GitHub.
- Collez
https://github.com/guim31/gladys-tflet installez. - Ouvrez l'onglet Configuration de l'intégration pour suivre des lignes et des arrêts (ci-dessous).
Configuration
Réglages
- Langue des textes : langue des noms de fonctionnalités (fixés à la création d'un appareil), des états et des phrases envoyées à vos scènes. Les motifs des perturbations restent en anglais, tels que TfL les publie.
- Fréquence de mise à jour : 1 minute (par défaut) ou 2 minutes.
- Clé d'application TfL (facultative) : relève le quota. Elle n'est jamais écrite dans les logs.
Suivre une ligne
Utilisez Suivre une ligne avec le nom d'une ligne : Victoria, Elizabeth line,
Hammersmith & City, DLR, Tram, une ligne Overground (Liberty, Lioness, Mildmay,
Suffragette, Weaver, Windrush) ou un numéro de bus (73, N29). Ouvrez ensuite l'onglet
Découverte et créez l'appareil.
Suivre un arrêt
- Chercher un arrêt : saisissez un nom (
Oxford Circus,Brixton). La réponse liste les stations et arrêts de bus avec leur identifiant entre crochets, et la direction d'un arrêt de bus (→ Herne Hill). - Ajouter un arrêt : saisissez le nom exact ou l'identifiant. Filtres facultatifs :
- Lignes : les lignes à garder, séparées par des virgules (
Victoria, Central). Vide : toutes. - Direction : une partie de la destination ou du quai (
Brixton,Southbound).
- Lignes : les lignes à garder, séparées par des virgules (
- Ouvrez l'onglet Découverte et créez l'appareil.
Une station à plusieurs réseaux (un « hub », comme Brixton) est lue par ses stations TfL ; les trains National Rail n'ont pas de passages TfL. Un même arrêt peut être ajouté plusieurs fois avec d'autres filtres : chaque jeu de filtres est un appareil.
Retirer, consulter l'état
- Ne plus suivre une ligne et Retirer un arrêt (avec le nom affiché dans l'état) arrêtent les lectures. L'appareil reste dans Gladys jusqu'à ce que vous le supprimiez.
- État liste les lignes et arrêts suivis, si leur appareil est créé, la dernière lecture de TfL et la dernière erreur.
Appareils
Ligne (TfL · Victoria, TfL · Bus 73) :
| Fonctionnalité | Valeur |
|---|---|
| État | l'état en clair, « Retards légers », « Fermeture partielle + … » |
| Niveau de perturbation | 0 trafic normal, 1 mineure, 2 importante ou partielle, 3 interrompue |
| Perturbation | 1 quand le niveau dépasse 0, avec historique |
| Motif | le motif donné par TfL (en anglais), ou « Aucune perturbation » |
Arrêt (TfL · Oxford Circus (Victoria · → Southbound)) :
| Fonctionnalité | Valeur |
|---|---|
| Prochain passage | minutes d'attente (1440 quand aucun passage n'est annoncé) |
| Passage suivant | minutes avant le passage d'après |
| Ligne et destination | « Victoria → Walthamstow Central » |
| Perturbation | 1 quand une ligne de l'arrêt (ou de son filtre) est perturbée |
La fermeture nocturne du métro (« Service terminé ») n'est pas une perturbation. Des travaux annoncés pour plus tard ne sont pas une perturbation avant d'avoir commencé.
Widgets
- Prochains passages : choisissez un arrêt. Une ligne par passage (« Victoria → Brixton », « 07:45 · 3 min · Platform 6 »), verte quand la ligne circule normalement, orange en cas de perturbation mineure, rouge si elle est importante ; le motif d'une perturbation en tête.
- État des lignes TfL : chaque ligne suivie dont l'appareil est créé, la plus perturbée en premier, avec les mêmes couleurs et le premier motif en tête.
Déclencheurs de scène
- État d'une ligne modifié : une ligne suivie est perturbée, s'aggrave, s'améliore ou revient à un trafic normal. Filtres : la ligne (vide : toutes) et les événements. Variables : ligne, événement, état, niveau, niveau précédent, motif.
- C'est l'heure de partir : un passage à un arrêt suivi a lieu dans le nombre de minutes
choisi (1 à 20). Une fois par passage et par seuil. Filtres : arrêt, ligne (telle que TfL
l'écrit :
Victoria,73), seuil. Variables : arrêt, ligne, destination, quai, minutes, heure prévue.
Rien ne se déclenche à la première lecture après un démarrage : ce qui était déjà là n'est pas une nouvelle.
Actions de scène
- Lire les prochains passages : pour un arrêt (et éventuellement une ligne), les minutes avant le prochain passage et le suivant, la ligne, la destination, le quai, l'heure prévue, si une ligne est perturbée (1 ou 0), et une phrase : « Victoria vers Brixton à Oxford Circus : dans 3 et 7 min ».
- Lire l'état d'une ligne : l'état, le niveau (0 à 3), son nom, perturbée (1 ou 0), le motif, et une phrase : « Victoria : Retards légers. Minor delays due to train cancellations. »
Exemples de scènes
- Trajet du matin : à 7 h 30 en semaine, Lire l'état d'une ligne pour la Northern line, puis
Continuer seulement si
disrupted= 1, puis envoyer la phrase par Telegram. - Il faut partir : déclencheur C'est l'heure de partir sur votre arrêt de bus, seuil 5 minutes, puis faire clignoter une lampe et dire « Ton bus passe dans 5 minutes » sur une enceinte.
- Retour à la normale : déclencheur État d'une ligne modifié sur l'Elizabeth line avec l'événement « Retour à la normale », puis envoyer un message.
Données, mise à jour et quotas
Chaque minute (ou toutes les deux), l'intégration lit, pour les appareils créés seulement : une requête d'état pour toutes les lignes concernées (lignes suivies et lignes des arrêts suivis), puis une requête de passages par point d'arrêt (une station est un point d'arrêt, un hub jusqu'à quatre). TfL prévoit les passages une trentaine de minutes à l'avance. Jusqu'à 20 lignes et 10 arrêts.
TfL demande d'être cité (« Powered by TfL Open Data ») et limite les requêtes par clé ; l'usage anonyme est plus limité. Avec beaucoup d'arrêts, ajoutez une clé gratuite. Voir les conditions des données de transport de TfL.
Dépannage
- « TfL est injoignable (…HTTP 429 (quota)) » : trop de requêtes sur le quota anonyme. Ajoutez une clé gratuite, ou choisissez une fréquence de 2 minutes.
- « (app_key refused) » : la clé est fausse ou n'est abonnée à aucun produit sur le portail TfL. Corrigez-la, ou videz le champ.
- Aucun passage : hors des heures de service, ou station National Rail seulement. Vérifiez l'arrêt avec Chercher un arrêt et son identifiant.
- Le compte à rebours reste à 1440 : TfL n'annonce aucun passage pour le moment.
- Plus de détails : réglez
LOG_LEVEL=debugsur le conteneur.
Limites
- Développée hors de Londres sur la vraie API de TfL, sans usage quotidien sur place : vos retours sont les bienvenus.
- Les noms des fonctionnalités sont fixés à la création de l'appareil.
- Pas de retard ni de suppression par train : TfL ne publie que des heures prévues.
- Les motifs des perturbations sont en anglais, tels que TfL les publie.
- Les trains National Rail des gares partagées ne sont pas couverts.
Crédits
Powered by TfL Open Data. Contains OS data © Crown copyright and database rights. Inspirée de l'intégration Home Assistant « London Underground » (Apache 2.0) et des intégrations Entur et TTC pour Gladys.
Paramètres de configuration
Voici les paramètres demandés par Transport for London dans son écran de configuration dans Gladys.
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
| Comment ça marche | section | Non | Suivez des lignes et des arrêts avec les actions ci-dessous, puis créez leurs appareils dans l'onglet Découverte. Tout vient de l'open data de TfL : pas de compte, la clé est facultative. |
| Langue des textes | select | Non | Langue des noms de fonctionnalités, des états et des phrases envoyées à vos scènes. Les motifs des perturbations restent en anglais, tels que TfL les écrit. Les noms sont fixés à la création de l'appareil. |
| Fréquence de mise à jour | select | Non | Fréquence de lecture de TfL pour vos appareils créés : une requête d'état, plus une par point d'arrêt. |
| Clé d'application TfL (facultative) | secret | Non | Gratuite sur le portail API de TfL : elle porte le quota à 500 requêtes par minute. Sans elle, l'intégration fonctionne avec le quota anonyme. |
Comment installer Transport for London dans Gladys
- Dans Gladys, ouvrez Intégrations : Transport for London apparaît dans le catalogue, aux côtés des intégrations natives, avec un badge communautaire.
- Cliquez sur Installer. Gladys télécharge l'image Docker (
ghcr.io/guim31/gladys-tfl:1.0.0), la démarre dans un bac à sable isolé du cœur, et génère l'interface de l'intégration (appareils, découverte et configuration). - Ouvrez l'écran Configuration de l'intégration, remplissez les paramètres, puis enregistrez.
- Vous pouvez aussi l'installer directement depuis l'URL de son dépôt : https://github.com/guim31/gladys-tfl.
Transport for London nécessite Gladys >=5.1.0. Le catalogue dans Gladys se rafraîchit toutes les heures : une nouvelle version est donc disponible au plus tard une heure après sa sortie.
Vous n'utilisez pas encore Gladys ? C'est gratuit et open source : suivez le guide d'installation pour démarrer.
À propos des intégrations externes
Transport for London est une intégration externe : une intégration communautaire empaquetée dans un conteneur Docker et publiée sur GitHub, que Gladys installe en un clic et exécute dans un bac à sable isolé de son cœur. Elle est publiée et maintenue par guim31, et non par l'équipe cœur de Gladys.
- Parcourir toutes les intégrations, natives et communautaires
- Créer et publier votre propre intégration externe
- Code source sur GitHub — source de cette documentation