Google Transports en commun et GTFS-realtime : référence et différences

Cette page décrit les principales différences d'implémentation de la spécification entre le format GTFS-realtime officiel et Google Transports en commun dans les domaines suivants :

  • Spécifications officielles ignorées : ces champs font partie du GTFS officiel. Google Transports en commun ingère ces données sans erreur, mais ne les utilise pas de manière proactive.

  • Interprétation différente : ces champs incluent les parties du format GTFS officiel que Google Transports en commun interprète différemment de la définition GTFS de ces parties.

  • Compatibilité expérimentale : ces champs sont expérimentaux dans l'implémentation de Google Transports en commun. Si vous souhaitez implémenter un nouveau champ expérimental, contactez l'équipe Google Transports en commun.

  • Extension compatible avec Google Transports en commun : cette extension ne fait pas partie du format GTFS officiel. Elle inclut à la fois des extensions publiques et des extensions spécifiques à Google Transports en commun. Tous les partenaires peuvent envoyer ces informations à Google Transports en commun dans leur flux.

Transports en commun en temps réel

Les sections suivantes décrivent les principales différences d'implémentation du flux de transports en commun en temps réel entre le format GTFS officiel et Google Transports en commun.

Spécifications officielles ignorées dans les flux en temps réel

Certaines spécifications ignorées sont expérimentales. Pour en savoir plus, consultez gtfs.org.

Le tableau 1 liste les champs définis par GTFS qui sont ignorés par Google Transports en commun dans les flux en temps réel.

Tableau 1. Champs officiels ignorés dans les flux en temps réel
Message Champ ignoré défini dans la GTFS Type de champ
message Alert image TranslatedImage
message Alert image_alternative_text TranslatedString
message Alert severity_level Enum
message Alert tts_description_text Proto
message Alert tts_header_text Proto
message CarriageDetails id Chaîne
message CarriageDetails occupancy_percentage int32
message Position bearing Float
message Position odometer Double
message Position speed Float
message Shape encoded_polyline Chaîne
message Shape shape_id Chaîne
message StopTimeUpdate (dans TripUpdate) arrival.uncertainty int32
message StopTimeUpdate (dans TripUpdate) stop_time_properties Proto
message TripUpdate trip_properties Proto
message TripUpdate vehicle VehicleDescriptor
message VehicleDescriptor license_plate Chaîne
message VehicleDescriptor wheelchair_accessible WheelchairAccessible
message VehiclePosition congestion_level Enum
message VehiclePosition current_status VehicleStopStatus
message VehiclePosition current_stop_sequence uint32
message VehiclePosition multi_carriage_details.id Chaîne
message VehiclePosition occupancy_percentage uint32
message VehiclePosition stop_id Chaîne

Interprétation différente dans les flux en temps réel

Bien que Google Transports en commun accepte certains champs GTFS, il les interprète différemment du format GTFS.

Le tableau 2 liste les champs définis par GTFS dans les flux en temps réel qui sont facultatifs ou obligatoires sous certaines conditions dans Google Transports en commun. Pour les champs facultatifs, le tableau indique si les valeurs enum sont acceptées ou non par Google Transports en commun.

Tableau 2. Champs de flux en temps réel interprétés différemment
Nom de fichier Champ défini dans la GTFS Type de champ Requis par Google Transports en commun ? Détails de l'implémentation de Google Transports en commun
message StopTimeUpdate (dans TripUpdate) stop_id Chaîne Obligatoire sous certaines conditions

Lorsqu'une chaîne stop_id est fournie, elle doit remplir l'une des conditions suivantes :

  • La chaîne stop_id doit être identique à celle du fichier stops.txt dans le flux GTFS correspondant.
  • Si une autre chaîne stop_id est utilisée, la chaîne stop_id fournie doit être une chaîne frère ou enfant de la chaîne stop_id d'origine fournie dans le format GTFS statique. Le champ stop_sequence correspondant doit également être fourni.
message StopTimeUpdate schedule_relationship Enum Facultatif

Google Transports en commun accepte les valeurs enum suivantes :

  • SCHEDULED
  • SKIPPED
  • NO_DATA
message TripDescriptor schedule_relationship Enum Facultatif

Google Transports en commun n'accepte pas les valeurs enum suivantes :

  • DUPLICATED
  • CANCELED : lorsqu'il ne concerne pas les enregistrements TripUpdate

Google accepte les valeurs enum suivantes :

  • SCHEDULED
  • UNSCHEDULED
  • ADDED
  • CANCELED : compatible uniquement avec les enregistrements TripUpdate

Fonctionnalité expérimentale dans les flux en temps réel

Si vous avez besoin d'aide pour intégrer de nouveaux champs expérimentaux, contactez Google Transports en commun.

Extensions Google Transports en commun acceptées dans les flux en temps réel

Au moment où cet article est publié, aucun champ n'appartient à cette catégorie. Si vous avez besoin d'aide, contactez Google Transports en commun.