Diferenças entre a implementação da GTFS Realtime e do Google Transit

Esta página descreve as principais diferenças entre a GTFS Realtime e a implementação do Google Transit quanto às especificações nas seguintes áreas:

  • Especificações oficiais ignoradas: esses campos fazem parte da GTFS oficial. O Google Transit processa esses dados sem erros, mas não faz uso deles de maneira proativa.

  • Interpretação diferente: esses campos incluem as partes da GTFS oficial com definição interpretada de maneira diferente pelo Google Transit.

  • Suporte experimental: esses campos são experimentais na implementação do Google Transit. Se você quiser implementar um novo campo desse tipo, entre em contato com a equipe do Google Transit.

  • Extensão compatível com o Google Transit: essa extensão não faz parte da GTFS oficial. Ela inclui extensões públicas e específicas do Google Transit. Qualquer parceiro pode enviar essas informações para o Google Transit no feed.

Transporte público Realtime

As seções a seguir documentam as principais diferenças entre a GTFS oficial e a implementação do Google Transit quanto ao feed de transporte público Realtime.

Especificações oficiais ignoradas nos feeds em tempo real

Algumas especificações ignoradas são experimentais. Para saber mais, acesse gtfs.org.

A Tabela 1 lista os campos definidos pela GTFS que são ignorados pelo Google Transit nos feeds em tempo real.

Tabela 1. Campos oficiais ignorados nos feeds em tempo real
Mensagem Campo ignorado definido na GTFS Tipo de campo
mensagem Alert image TranslatedImage
mensagem Alert image_alternative_text TranslatedString
mensagem Alert severity_level Tipo enumerado
mensagem Alert tts_description_text Proto
mensagem Alert tts_header_text Proto
mensagem CarriageDetails id String
mensagem CarriageDetails occupancy_percentage int32
mensagem Position bearing Float
mensagem Position odometer Double
mensagem Position speed Float
mensagem Shape encoded_polyline String
mensagem Shape shape_id String
mensagem StopTimeUpdate (em TripUpdate) arrival.uncertainty int32
mensagem StopTimeUpdate (em TripUpdate) stop_time_properties Proto
mensagem TripUpdate trip_properties Proto
mensagem TripUpdate vehicle VehicleDescriptor
mensagem VehicleDescriptor license_plate String
mensagem VehicleDescriptor wheelchair_accessible WheelchairAccessible
mensagem VehiclePosition congestion_level Tipo enumerado
mensagem VehiclePosition current_status VehicleStopStatus
mensagem VehiclePosition current_stop_sequence uint32
mensagem VehiclePosition multi_carriage_details.id String
mensagem VehiclePosition occupancy_percentage uint32
mensagem VehiclePosition stop_id String

Interpretação diferente nos feeds em tempo real

Embora o Google Transit aceite determinados campos da GTFS, a interpretação que ele faz é diferente.

A Tabela 2 lista campos definidos pela GTFS nos feeds em tempo real que são opcionais ou obrigatórios sob certas condições no Google Transit. Para campos opcionais, a tabela mostra se os valores do tipo enumerado são aceitos ou não pelo Google Transit.

Tabela 2. Campos de feed em tempo real interpretados de maneira diferente
Nome do arquivo Campo definido na GTFS Tipo de campo Exigido pelo Google Transit? Detalhes da implementação do Google Transit
mensagem StopTimeUpdate (em TripUpdate) stop_id String Obrigatório sob certas condições

Quando uma string stop_id é fornecida, ela precisa atender a uma das seguintes condições:

  • A string stop_id precisa ser a mesma do arquivo stops.txt no Feed GTFS correspondente.
  • Se uma string stop_id diferente for usada, a stop_id fornecida precisa ser irmã ou filha da string stop_id original apresentada na GTFS estática. O campo stop_sequence correspondente também tem que ser fornecido.
mensagem StopTimeUpdate schedule_relationship Tipo enumerado Opcional

O Google Transit aceita os seguintes valores de tipo enumerado:

  • SCHEDULED
  • SKIPPED
  • NO_DATA
mensagem TripDescriptor schedule_relationship Tipo enumerado Opcional

O Google Transit não aceita os seguintes valores de tipo enumerado:

  • DUPLICATED
  • CANCELED: quando não for para registros TripUpdate

O Google aceita os seguintes valores de tipo enumerado:

  • SCHEDULED
  • UNSCHEDULED
  • ADDED
  • CANCELED: aceito apenas para registros TripUpdate

Suporte experimental nos feeds em tempo real

Se você precisar de suporte para integrar novos campos experimentais, entre em contato com o Google Transit.

Extensões compatíveis com o Google Transit nos feeds em tempo real

Quando este artigo foi publicado, nenhum campo pertencia a essa categoria. Se você precisar de assistência, entre em contato com o Google Transit.