Fournir aux utilisateurs des mises à jour en temps réel sur les transports en commun améliore de façon significative le confort d'utilisation du service. Grâce aux informations actualisées sur les arrivées et départs en cours, les utilisateurs peuvent planifier leurs trajets sans difficulté. De ce fait, si un retard est annoncé, l'usager peut retarder le départ de son domicile.
GTFS-realtime est une spécification de flux permettant aux agences de transports en commun de fournir aux développeurs d'applications des mises à jour en temps réel sur leur flotte. Il s'agit d'une extension de GTFS (General Transit Feed Specification), un format de données ouvert pour les horaires de transports en commun et les informations géographiques associées. La conception de GTFS-realtime est basée sur une implémentation aisée, une bonne interopérabilité avec GTFS et une attention particulière accordée aux informations fournies aux passagers.
La spécification a été élaborée grâce au partenariat entre les agences partenaires initiales du service de mises à jour en temps réel des transports en commun, un certain nombre de développeurs d'applications de transports en commun et Google. La spécification est publiée sous la licence Apache 2.0.
En quoi consistent les mises à jour en temps réel des transports en commun pour Google Maps ?
Le service de mise à jour en temps réel permet aux utilisateurs de Google Maps et de Google Maps pour mobile de profiter de mises à jour en temps réel des transports en commun. Ces mises à jour incluent les dernières heures de départ et d'arrivée aux stations de transport en commun, et les alertes de service.
Le service de mise à jour en temps réel des transports en commun propose deux types de mises à jour aux utilisateurs : les heures de départ en temps réel et les alertes de service. Les partenaires de Google Transports en commun fournissent ces mises à jour dans leurs flux. Nous avons mis au point le format de flux GTFS-realtime pour compléter le format GTFS déjà très répandu pour partager les horaires de transports en commun statiques. Votre flux doit être disponible à un emplacement depuis lequel nous pouvons l'extraire à intervalles réguliers. Le système traite immédiatement les mises à jour de flux en tant qu'informations sur les mises à jour en temps réel des transports en commun.
Par où commencer ?
- Poursuivez la lecture de la présentation ci-dessous.
- Identifiez les entités de flux que vous souhaitez fournir.
- Examinez les exemples de flux.
- Créez vos propres flux en utilisant la référence.
- Publiez votre flux.
Présentation des flux GTFS-realtime
La spécification accepte actuellement les types d'informations suivants :
- Mises à jour des trajets : retards, annulations et itinéraires modifiés
- Alertes de service : arrêt déplacé et événements imprévus affectant une station, un itinéraire ou l'ensemble du réseau
- Position du véhicule : informations sur les véhicules, y compris leur localisation et la densité du trafic
Un flux peut combiner des entités de types différents, même si ce n'est pas obligatoire. Les flux sont diffusés via HTTP et mis à jour fréquemment. Le fichier lui-même est un fichier binaire standard. N'importe quel type de serveur Web peut donc l'héberger et le diffuser (d'autres protocoles de transfert peuvent également être utilisés). Il est également possible d'utiliser des serveurs d'applications Web qui, en réponse à une requête HTTP GET
valide, renvoient le flux. Il n'existe aucune restriction concernant la fréquence ou la méthode exacte de mise à jour (ou de récupération) du flux.
Étant donné que GTFS-realtime vous permet de présenter l'état réel de votre flotte, le flux doit être mis à jour régulièrement, de préférence chaque fois que de nouvelles données proviennent de votre système de localisation automatique des véhicules.
En savoir plus sur les entités de flux
Format des données
Le format d'échange de données GTFS-realtime est basé sur les tampons de protocole.
Les tampons de protocole correspondent à un mécanisme neutre en termes de langage et de plate-forme permettant de sérialiser des données structurées (comme le format XML, mais en plus petit, plus rapide et plus simple). La structure des données est définie dans un fichier gtfs-realtime.proto. Celui-ci permet ensuite de générer un code source pour lire et écrire facilement vos données structurées depuis et dans divers flux de données, via différents langages (par exemple Java, C++ ou Python).
En savoir plus sur les tampons de protocole
Structure des données
La hiérarchie des éléments et les définitions de leur type sont spécifiées dans le fichier gtfs-realtime.proto.
Ce fichier texte permet de générer les bibliothèques nécessaires dans le langage de programmation que vous avez choisi. Ces bibliothèques fournissent les classes et les fonctions requises pour générer des flux GTFS-realtime valides. Les bibliothèques facilitent la création de flux, tout en garantissant que seuls des flux corrects seront générés.
En savoir plus sur la structure des données
Obtenir de l'aide
Pour participer aux discussions sur GTFS-realtime, et suggérer des modifications ou des ajouts, rejoignez la liste de diffusion GTFS-realtime.
Google Maps et les mises à jour en temps réel des transports en commun
La fonctionnalité Google Maps de mise à jour en temps réel des transports en commun fournit aux utilisateurs des flux d'informations sur les transports en commun. Si vous travaillez dans une agence de transports publics souhaitant fournir des mises à jour en temps réel à Google Maps, consultez la page des partenaires Google Transports en commun.