Intégration domotique Naolib Nantes, gratuite et open source

Trams et bus de Nantes (Naolib) : départs en temps réel, retards, trafic des lignes.
Présentation
Cette intégration amène Naolib, les trams, busways, Chronobus, bus et Navibus de Nantes Métropole, dans Gladys. Elle donne les prochains départs, corrigés en temps réel, avec leur retard, aux arrêts que vous choisissez (trois dans le formulaire, jusqu’à 10 de plus avec un bouton), filtrés par ligne et par direction. Elle suit aussi le trafic de six lignes au plus (normal, info trafic, perturbé, très perturbé), avec les alertes de Naolib : déviations, arrêts reportés, travaux. Chaque arrêt et chaque ligne devient un appareil à afficher sur un tableau de bord et à utiliser dans des scènes.
Les données viennent de l’open data officiel de Naolib (Nantes Métropole), sous licence ODbL : ni compte ni clé. Les horaires (GTFS, publiés sur data.nantesmetropole.fr) ne sont téléchargés que lorsqu’un nouveau fichier est publié, et sont gardés par l’intégration. Le temps réel (GTFS-RT) de tout le réseau est lu via transport.data.gouv.fr, le point d’accès national, en une seule requête pour tous les arrêts suivis, chaque minute par défaut (toutes les 10 minutes quand aucun arrêt n’annonce rien dans la demi-heure, la nuit). Les alertes sont lues toutes les 5 minutes.
Un départ est suivi en temps réel dès que sa course est en route : son heure estimée et son retard sont donnés. Avant, ce sont les horaires théoriques, marqués « (théorique) ». Les courses supprimées et les arrêts non desservis sont signalés.
La source du temps réel ne répond qu’une fois toutes les 30 secondes pour tout le monde : quand elle est occupée, l’intégration redemande quelques secondes plus tard et utilise en attendant sa dernière lecture (de moins de 3 minutes).
C’est une intégration cloud : elle contacte data.nantesmetropole.fr et proxy.transport.data.gouv.fr. Rien d’autre ne quitte votre réseau.
Prérequis
- Gladys Assistant 5.3.0 ou plus récent.
- Rien d’autre : l’open data de Naolib ne demande ni compte ni clé.
Configuration
| Champ | Quoi saisir |
|---|---|
| Arrêt 1, 2, 3 | Le nom de l’arrêt tel qu’écrit dessus : « Commerce », « Gare Nord - Jardin des Plantes ». |
| Ligne | Seulement cette ligne : « 1 », « C1 », « 4 », « N1 ». Vide : toutes les lignes de l’arrêt. |
| Direction | Seulement les destinations contenant ces mots : « Beaujoire », « Beaujoire | Ranzay ». Vide : les deux sens. |
| Lignes suivies | Les lignes dont vous suivez le trafic, six au plus : « 1, 2, C1, 4 ». |
| Lecture du temps réel | Toutes les 30 secondes, minutes, 2 minutes ou 5 minutes. |
| Langue des textes | Noms des appareils, résumés et sorties des scènes. Les noms d’arrêts et les messages de trafic restent en français. |
Un arrêt regroupe tous les quais de sa zone d’arrêt, trams et bus : « Commerce » donne les deux sens des trams 1, 2 et 3 et les bus qui y passent. Un nom porté dans deux communes (« Poitou ») donne deux arrêts : le second s’écrit avec « -2 » dans Chercher un arrêt. Le bouton Chercher un arrêt donne les arrêts contenant quelques mots, avec leurs lignes (« Commerce → 1, 2, 3… »). Quelques mots suffisent quand un seul arrêt les contient (« haluch » → Haluchère - Batignolles). Tester la connexion redemande les horaires et lit tout de suite chaque arrêt et chaque ligne.
Une ligne s’écrit comme sur le véhicule : « 1 » à « 3 » pour les trams, « 4 » et « 5 » pour les busways, « C1 » à « C20 » pour les Chronobus, « N1 » à « N3 » pour les Navibus, « 26 », « NS » (Nuit Sud)…
Plus d’arrêts que les trois du formulaire (maison, travail, école…) : Ajouter un arrêt prend les trois mêmes champs — arrêt, ligne, direction — et suit jusqu’à 10 arrêts de plus. Lister les arrêts montre tous les arrêts suivis, numérotés ; Retirer un arrêt prend ce numéro (ou le nom). Les arrêts ajoutés sont gardés dans la configuration de Gladys, ils suivent donc ses sauvegardes.
Les horaires de Naolib forment un gros fichier : la première lecture, et celle de chaque nouveau fichier, prend une vingtaine de secondes.
Utilisation
Appareils
Dans l’onglet Découvrir, créez les appareils voulus :
- Naolib <arrêt> : le prochain départ en texte (« 1 → Beaujoire · 3 min (+2 min de retard) »), l’attente du prochain départ et du suivant (minutes), et le retard du prochain (minutes, publié seulement quand il est suivi en temps réel) ;
- Naolib tram 1, Naolib ligne C1… : le trafic en texte (« Trafic perturbé : Travaux boulevard de l'Estuaire ») et le nombre de messages de trafic en cours.
La nuit, sans départ dans les trois heures, l’appareil montre le premier départ du matin.
Trafic
Naolib publie des alertes : un texte, les lignes (ou les arrêts) concernées et leurs périodes. L’état d’une ligne vient de son alerte en cours la plus lourde : très perturbé pour une interruption, perturbé pour une déviation, des arrêts reportés ou non desservis, des retards, info trafic sinon ; normal sans alerte. Une alerte qui commence dans les trois jours est montrée comme à venir. Le lien vers le plan d’une déviation, quand il est donné, s’ouvre depuis la carte de l’alerte.
Widgets du tableau de bord

- Départs Naolib : les prochains départs d’un arrêt, en compact. Une ligne par ligne et destination, avec ses prochains départs à la suite (« 2 · 17 min »). Une course supprimée est signalée (« supprimé 22:48 ») et passe la ligne en orange, comme un retard de 5 minutes ou plus. Le réglage Trajets affichés fixe le nombre de lignes. Choisissez un arrêt suivi, ou saisissez n’importe quel arrêt (et une ligne) dans les réglages du widget. Avec Plusieurs arrêts, un seul widget montre plusieurs appareils d’arrêt : les appareils d’un même arrêt sont fusionnés sous son nom ; pour des arrêts différents, chaque arrêt commence par une ligne à lui.
- Trafic Naolib : l’état de chaque ligne, puis les alertes en cours et celles des trois jours à venir, avec leur période. Touchez une carte pour le texte complet. Les lignes suivies, celles saisies dans les réglages, ou les trois lignes de tram si vous n’en suivez aucune.
Scènes
Déclencheurs, une fois par changement (la première lecture sert seulement de référence) :
- Naolib : départ bientôt : un départ d’un arrêt suivi part dans 2, 3, 5, 10, 15 ou 20 minutes, compté sur son estimation en temps réel.
- Naolib : départ supprimé : une course de l’heure à venir à un arrêt suivi est supprimée, ou ne dessert pas l’arrêt.
- Naolib : ligne perturbée : une ligne suivie devient perturbée ou très perturbée.
- Naolib : fin de perturbation : plus aucune perturbation en cours sur la ligne.
- Naolib : nouveau message trafic : Naolib publie une alerte sur une ligne suivie, en cours ou à venir.
Chacun donne une phrase toute prête, {{triggerEvent.data.summary}}, et ses valeurs (ligne, destination, heure, retard, titre, texte, début et fin…). Les actions Naolib : prochains départs et Naolib : trafic d’une ligne renvoient le même genre de valeurs, à mettre dans un message ou à tester dans une condition.
Exemples :
- Quand le tram 1 vers Beaujoire part de Commerce dans 5 minutes → passer la lampe de l’entrée au vert.
- Quand un départ de votre arrêt est supprimé, ou que le C1 est dévié → envoyer le résumé sur votre téléphone avant de partir.
- Chaque jour de semaine à 7 h 30 → lire les prochains départs de votre arrêt et les faire annoncer par l’enceinte de la cuisine.
Transport
Cloud uniquement : les données viennent d’internet. Les horaires quand un nouveau fichier est publié, le temps réel de tout le réseau en une requête, les alertes toutes les 5 minutes.
Dépannage
- « Inconnu ou ambigu » : utilisez Chercher un arrêt, puis copiez le nom exact (avec son « -2 » pour le second arrêt d’un nom) ; pour une ligne, son nom comme sur le véhicule (« 1 », « C1 », « 4 »).
- « (théorique) » après un départ : sa course n’est pas encore en route, ou Naolib ne la suit pas ; l’heure est celle des horaires.
- Aucun départ dans la direction saisie : les destinations sont celles écrites sur les véhicules (« Beaujoire », « François Mitterrand ») ; videz la direction pour toutes les voir.
- « L’open data de Naolib ne répond pas » : l’intégration réessaie à chaque lecture ; en attendant, les départs viennent des horaires gardés. Un court refus du temps réel (sa source ne répond qu’une fois toutes les 30 secondes) passe inaperçu : la dernière lecture est utilisée.
- Pour signaler un problème : appuyez sur Diagnostic, puis copiez les lignes commençant par « Naolib diagnostic » de l’onglet Journaux dans une issue GitHub ou une réponse sur le forum, avec les versions de Gladys et de l’intégration.
Paramètres de configuration
Voici les paramètres demandés par Naolib Nantes dans son écran de configuration dans Gladys.
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
| Open data Naolib | section | Non | Les départs et le trafic viennent de l’open data officiel de Naolib, les trams et bus de Nantes Métropole : les horaires (GTFS) et le temps réel (GTFS-RT) de tout le réseau (trams, busways, Chronobus, bus, Navibus). Ni compte ni clé : renseignez vos arrêts et vos lignes ci-dessous, puis appuyez sur « Tester la connexion ». |
| Arrêt 1 | section | Non | L’arrêt où vous prenez le tram ou le bus : ses prochains départs, d’après les horaires corrigés en temps réel, avec leur retard. Saisissez son nom tel qu’écrit à l’arrêt (« Commerce », « Gare Nord - Jardin des Plantes ») : le bouton « Chercher un arrêt » les donne. La ligne ne garde que ses départs (« 1 », « C1 », « 4 »). La direction ne garde que les destinations qui contiennent ces mots (« Gare Sud », « Beaujoire | Ranzay »). |
| Arrêt | string | Non | |
| Ligne | string | Non | Vide pour toutes les lignes. |
| Direction | string | Non | Des mots de la destination. Vide pour les deux sens. |
| Arrêt 2 | section | Non | |
| Arrêt | string | Non | |
| Ligne | string | Non | Vide pour toutes les lignes. |
| Direction | string | Non | Des mots de la destination. Vide pour les deux sens. |
| Arrêt 3 | section | Non | D’autres arrêts (domicile, travail, école…) : le bouton « Ajouter un arrêt », sous le formulaire, en suit jusqu’à 10 de plus, « Lister les arrêts » les montre tous, numérotés, et « Retirer un arrêt » arrête d’en suivre un. Le temps réel de tous les arrêts arrive en une seule requête. |
| Arrêt | string | Non | |
| Ligne | string | Non | Vide pour toutes les lignes. |
| Direction | string | Non | Des mots de la destination. Vide pour les deux sens. |
| Trafic des lignes | section | Non | Les lignes dont vous suivez le trafic : un appareil par ligne, avec son état (normal, info trafic, perturbé, très perturbé) déduit des alertes de Naolib, et ses messages trafic (travaux, déviations, arrêts non desservis), lus toutes les 5 minutes. |
| Lignes suivies | string | Non | Jusqu’à 6, séparées par des virgules. |
| Options | section | Non | |
| Lecture du temps réel | select | Non | À quelle fréquence le temps réel du réseau est lu : une seule requête pour tous les arrêts suivis. Quand aucun arrêt n’annonce rien dans la demi-heure (la nuit), toutes les 10 minutes. Les horaires sont lus une fois par jour. |
| Langue des textes | select | Non | Noms des appareils, résumés et sorties des scènes. Automatique : la langue de votre tableau de bord, dès qu’un widget Naolib a été affiché. Les noms d’arrêts et les messages trafic restent en français. |
Comment installer Naolib Nantes dans Gladys
- Dans Gladys, ouvrez Intégrations : Naolib Nantes 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/william-de71/gladys-naolib:0.1.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/William-De71/gladys-naolib.
Naolib Nantes nécessite Gladys >=5.3.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
Naolib Nantes 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 William-De71, 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