Présentation du service

Le site openbaarvervoerbelgie.be propose une carte interactive qui regroupe l’ensemble des bus, tram, métro et train exploités par les quatre opérateurs nationaux : De Lijn, STIB‑MIVB, TEC et NMBS. Chaque véhicule apparaît avec son retard actuel, ses arrêts et ses horaires de départ, le tout actualisé en temps réel. Cette agrégation unique permet à un usager de visualiser, depuis une même interface, le réseau complet du transport public belge, indépendamment des zones linguistiques ou des systèmes tarifaires propres à chaque compagnie.

Architecture technique

Les quatre opérateurs publient leurs données via le format GTFS‑Realtime, standard ouvert pour les flux de position et de retard. Openbaarvervoerbelgie consomme ces flux via des requêtes HTTP périodiques, les normalise dans un schéma commun, puis les stocke temporairement dans une base NoSQL à haute vitesse (ex. Redis) afin de garantir un accès sub‑second. La couche de visualisation s’appuie sur Leaflet couplée à des tuiles OpenStreetMap, tandis que les points de transport sont rendus par des marqueurs vectoriels mis à jour par des appels Ajax toutes les 30 secondes.

Gestion des performances et des limites

Le principal défi réside dans la synchronisation des flux disparates : chaque opérateur possède ses propres intervalles de mise à jour (de 10 s à 60 s) et ses limites de taux d’appel API. Le système implémente un mécanisme de back‑off adaptatif qui réduit la fréquence de polling lorsqu’un seuil de 95 % d’erreurs HTTP est atteint, évitant ainsi les blocages. Le cache en mémoire limite la charge serveur, mais introduit un délai de latence maximal de 45 s entre la réception du retard et son affichage. De plus, la précision GPS des véhicules varie selon les opérateurs, ce qui peut entraîner des incohérences de position sur la carte.

Implications pour les usagers et perspectives

En unifiant les données, la carte améliore la planification de trajets multimodaux, notamment pour les déplacements inter‑régionaux où les correspondances entre De Lijn et NMBS sont fréquentes. Toutefois, l’absence de données de capacité (places disponibles) limite l’évaluation de la congestion à bord. Les développeurs envisagent d’intégrer des WebSockets pour pousser les mises à jour instantanément, réduisant ainsi le besoin de polling et le temps de latence perçu. Une ouverture supplémentaire des API par les opérateurs, incluant les informations de disponibilité des vélos en libre service, pourrait enrichir davantage l’écosystème.