Porównanie i opis danych GTFS w czasie rzeczywistym w usłudze Google Transit

Na tej stronie opisano główne różnice między oficjalną specyfikacją GTFS w czasie rzeczywistym a implementacją tej specyfikacji przez Google Transit w tych obszarach:

  • Zignorowane oficjalne specyfikacje: te pola są częścią oficjalnej specyfikacji GTF. Google Transit pobiera te dane bezbłędnie, ale nie używa ich aktywnie.

  • Inna interpretacja: te pola obejmują części oficjalnego GTFS, które Google Transit interpretuje inaczej niż definicja GTFS tych części.

  • Obsługa w wersji eksperymentalnej: te pola są w wersji eksperymentalnej w ramach implementacji Google Transit. Jeśli chcesz wdrożyć nowe pole eksperymentalne, skontaktuj się z zespołem Google Transit.

  • Rozszerzenie obsługiwane przez Google Transit: to rozszerzenie nie jest częścią oficjalnego GTFS. Rozszerzenie obsługiwane przez Google Transit obejmuje zarówno rozszerzenia publiczne, jak i rozszerzenia specyficzne dla Google Transit. Każdy partner może przesyłać te informacje do Transitu w swoim pliku danych.

Transport publiczny w czasie rzeczywistym

W następnych sekcjach opisano główne różnice między oficjalnym plikiem danych GTFS a plikiem danych Google Transit na potrzeby usługi Czas rzeczywisty.

Ignorowanie oficjalnych specyfikacji w plikach danych w czasie rzeczywistym

Niektóre zignorowane specyfikacje są eksperymentalne. Więcej informacji znajdziesz na stronie gtfs.org.

Tabela 1 zawiera zdefiniowane przez GTFS pola, które są ignorowane przez Transit w plikach danych w czasie rzeczywistym.

Tabela 1. Zignorowane pola oficjalne w plikach danych w czasie rzeczywistym
Wiadomość Ignorowane pole zdefiniowane w GTFS Typ pola
wiadomość Alert image TranslatedImage
wiadomość Alert image_alternative_text TranslatedString
wiadomość Alert severity_level Typ wyliczeniowy
message Alert tts_description_text Proto
wiadomość Alert tts_header_text Proto
wiadomość CarriageDetails id Ciąg znaków
wiadomość CarriageDetails occupancy_percentage int32
wiadomość Position bearing Liczba zmiennoprzecinkowa
wiadomość Position odometer Podwójne
wiadomość Position speed Liczba zmiennoprzecinkowa
wiadomość Shape encoded_polyline Ciąg znaków
wiadomość Shape shape_id Ciąg znaków
message StopTimeUpdate (w: TripUpdate) arrival.uncertainty int32
message StopTimeUpdate (w: TripUpdate) stop_time_properties Proto
wiadomość TripUpdate trip_properties Proto
wiadomość TripUpdate vehicle VehicleDescriptor
message VehicleDescriptor license_plate Ciąg znaków
wiadomość VehicleDescriptor wheelchair_accessible WheelchairAccessible
wiadomość VehiclePosition congestion_level Typ wyliczeniowy
wiadomość VehiclePosition current_status VehicleStopStatus
message VehiclePosition current_stop_sequence uint32
wiadomość VehiclePosition multi_carriage_details.id Ciąg znaków
wiadomość VehiclePosition occupancy_percentage uint32
wiadomość VehiclePosition stop_id Ciąg znaków

Inna interpretacja w plikach danych w czasie rzeczywistym

Chociaż Transit akceptuje niektóre pola GTFS, interpretuje je inaczej niż GTFS.

Tabela 2 zawiera zdefiniowane przez GTFS pola w plikach danych w czasie rzeczywistym, które są opcjonalne lub warunkowo wymagane przez Transit. W przypadku pól opcjonalnych tabela pokazuje, czy wartości typu enum są obsługiwane przez Transit.

Tabela 2. Różne interpretacje pól pliku danych w czasie rzeczywistym
Nazwa pliku Pole zdefiniowane w GTFS Typ pola Wymagane przez Google Transit? Szczegóły implementacji Google Transit
message StopTimeUpdate (w: TripUpdate) stop_id Ciąg znaków Wymagane warunkowo

Gdy podany jest ciąg tekstowy stop_id, musi on spełniać jeden z tych warunków:

  • Ciąg znaków stop_id musi być taki sam jak w pliku stops.txt w odpowiednim pliku danych GTFS.
  • Jeśli używany jest inny ciąg tekstowy stop_id, podany ciąg tekstowy stop_id musi być ciągiem tekstowym podrzędnym lub siostrzanym względem oryginalnego ciągu tekstowego stop_id podanego w statycznym pliku GTFS. Musisz też podać odpowiednie pole stop_sequence.
wiadomość StopTimeUpdate schedule_relationship Typ wyliczeniowy Opcjonalnie

Google Transit obsługuje te wartości enum:

  • SCHEDULED
  • SKIPPED
  • NO_DATA
wiadomość TripDescriptor schedule_relationship Typ wyliczeniowy Opcjonalnie

Usługa Google Transit nie obsługuje tych wartości enum:

  • DUPLICATED
  • CANCELED – gdy nie dotyczy rekordów TripUpdate

Google obsługuje te wartości enum:

  • SCHEDULED
  • UNSCHEDULED
  • ADDED
  • CANCELED – obsługiwane tylko w przypadku rekordów TripUpdate

Eksperymentalna obsługa w plikach danych w czasie rzeczywistym

Jeśli potrzebujesz pomocy w integracji nowych pól eksperymentalnych, skontaktuj się z Google Transit.

Rozszerzenia obsługiwane przez Google Transit w plikach danych w czasie rzeczywistym

W momencie publikacji tego artykułu żadne pola nie należały do tej kategorii. Jeśli potrzebujesz pomocy, skontaktuj się z Google Transit.