REST Resource: providers.trips

Recurso: viagem

Metadados de viagem.

Representação JSON
{
  "name": string,
  "vehicleId": string,
  "tripStatus": enum (TripStatus),
  "tripType": enum (TripType),
  "pickupPoint": {
    object (TerminalLocation)
  },
  "actualPickupPoint": {
    object (StopLocation)
  },
  "actualPickupArrivalPoint": {
    object (StopLocation)
  },
  "pickupTime": string,
  "intermediateDestinations": [
    {
      object (TerminalLocation)
    }
  ],
  "intermediateDestinationsVersion": string,
  "intermediateDestinationIndex": integer,
  "actualIntermediateDestinationArrivalPoints": [
    {
      object (StopLocation)
    }
  ],
  "actualIntermediateDestinations": [
    {
      object (StopLocation)
    }
  ],
  "dropoffPoint": {
    object (TerminalLocation)
  },
  "actualDropoffPoint": {
    object (StopLocation)
  },
  "dropoffTime": string,
  "remainingWaypoints": [
    {
      object (TripWaypoint)
    }
  ],
  "vehicleWaypoints": [
    {
      object (TripWaypoint)
    }
  ],
  "route": [
    {
      object (LatLng)
    }
  ],
  "currentRouteSegment": string,
  "currentRouteSegmentVersion": string,
  "currentRouteSegmentTraffic": {
    object (ConsumableTrafficPolyline)
  },
  "currentRouteSegmentTrafficVersion": string,
  "currentRouteSegmentEndPoint": {
    object (TripWaypoint)
  },
  "remainingDistanceMeters": integer,
  "etaToFirstWaypoint": string,
  "remainingTimeToFirstWaypoint": string,
  "remainingWaypointsVersion": string,
  "remainingWaypointsRouteVersion": string,
  "numberOfPassengers": integer,
  "lastLocation": {
    object (VehicleLocation)
  },
  "lastLocationSnappable": boolean,
  "view": enum (TripView)
}
Campos
name

string

Apenas saída. No formato "providers/{provider}/trips/{trip}"

vehicleId

string

ID do veículo que faz essa viagem.

tripStatus

enum (TripStatus)

Status atual da viagem.

tripType

enum (TripType)

O tipo de viagem.

pickupPoint

object (TerminalLocation)

Local onde o cliente indica que será atendido.

actualPickupPoint

object (StopLocation)

Somente entrada. O local real em que o cliente foi buscado. Esse campo é para o provedor enviar feedback sobre as informações de retirada reais.

actualPickupArrivalPoint

object (StopLocation)

Somente entrada. A hora e o local reais de chegada do motorista no ponto de embarque. Este campo é para o provedor dar feedback sobre as informações de chegada reais no ponto de retirada.

pickupTime

string (Timestamp format)

Apenas saída. O horário futuro estimado em que os passageiros serão buscados ou o horário real em que foram buscados.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

intermediateDestinations[]

object (TerminalLocation)

Paradas intermediárias que a viagem solicita (além do embarque e do desembarque). Inicialmente, não haverá suporte para viagens compartilhadas.

intermediateDestinationsVersion

string (Timestamp format)

Indica a última vez que o intermediateDestinations foi modificado. Seu servidor precisa armazenar esse valor em cache e transmiti-lo em UpdateTripRequest ao atualizar o intermediateDestinationIndex para garantir que o intermediateDestinations não seja modificado.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

intermediateDestinationIndex

integer

Quando TripStatus é ENROUTE_TO_INTERMEDIATE_DESTINATION, um número entre [0..N-1] que indica qual destino intermediário o veículo vai cruzar em seguida. Quando TripStatus é ARRIVED_AT_INTERMEDIATE_DESTINATION, um número entre [0..N-1] que indica em qual destino intermediário o veículo está. O provedor define esse valor. Se não houver intermediateDestinations, esse campo será ignorado.

actualIntermediateDestinationArrivalPoints[]

object (StopLocation)

Somente entrada. A hora e o local reais de chegada do motorista em um destino intermediário. Esse campo é para o provedor fornecer feedback sobre as informações de chegada reais nos destinos intermediários.

actualIntermediateDestinations[]

object (StopLocation)

Somente entrada. O horário e o local exatos em que o cliente foi retirado de um destino intermediário. Esse campo é para o provedor enviar feedback sobre as informações de coleta reais em destinos intermediários.

dropoffPoint

object (TerminalLocation)

Local onde o cliente indica que será deixado.

actualDropoffPoint

object (StopLocation)

Somente entrada. O horário e local reais em que o cliente foi deixado. Esse campo é para o provedor dar feedback sobre as informações reais de entrega.

dropoffTime

string (Timestamp format)

Apenas saída. O horário futuro estimado em que os passageiros serão deixados no destino final ou o horário real em que foram deixados.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

remainingWaypoints[]

object (TripWaypoint)

Apenas saída. O caminho completo do local atual até o ponto de desembarque, inclusive. Esse caminho pode incluir waypoints de outras viagens.

vehicleWaypoints[]

object (TripWaypoint)

Esse campo permite a ordenação manual dos waypoints da viagem. Ele contém todos os pontos de referência restantes do veículo atribuído, bem como os pontos de coleta e de entrega da viagem. Se a viagem não tiver sido atribuída a um veículo, o Fleet Engine vai ignorar esse campo. Por motivos de privacidade, esse campo só é preenchido pelo servidor em chamadas trips.update e trips.create, e não em chamadas trips.get.

route[]

object (LatLng)

Apenas saída. Trajeto previsto para esta viagem até a primeira entrada nos Waypoints restantes. O primeiro ponto de passagem pode pertencer a uma viagem diferente.

currentRouteSegment

string

Apenas saída. Um caminho codificado para o próximo ponto de passagem.

Observação: este campo é destinado apenas ao uso pelo SDK do driver e pelo SDK do consumidor. Ainda não há suporte para decodificação.

currentRouteSegmentVersion

string (Timestamp format)

Apenas saída. Indica a última vez que a rota foi modificada.

Observação: este campo é destinado apenas ao uso pelo SDK do driver e pelo SDK do consumidor.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

currentRouteSegmentTraffic

object (ConsumableTrafficPolyline)

Apenas saída. Indica as condições de trânsito ao longo da currentRouteSegment quando eles estão disponíveis.

Observação: este campo é destinado apenas ao uso pelo SDK do driver e pelo SDK do consumidor.

currentRouteSegmentTrafficVersion

string (Timestamp format)

Apenas saída. Indica a última vez que o currentRouteSegmentTraffic foi modificado.

Observação: este campo é destinado apenas para uso do SDK do Driver e do SDK do consumidor.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

currentRouteSegmentEndPoint

object (TripWaypoint)

Apenas saída. O ponto de passagem em que currentRouteSegment termina.

remainingDistanceMeters

integer

Apenas saída. A distância de carro restante no campo currentRouteSegment. O valor não será especificado se a viagem não estiver atribuída a um veículo ou tiver sido concluída ou cancelada.

etaToFirstWaypoint

string (Timestamp format)

Apenas saída. O HEC até o próximo waypoint (a primeira entrada no campo remainingWaypoints). O valor não será especificado se a viagem não estiver atribuída a um veículo ou se estiver inativa (concluída ou cancelada).

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

remainingTimeToFirstWaypoint

string (Duration format)

Apenas saída. A duração do retorno dos dados de viagem ao horário em Trip.eta_to_first_waypoint. O valor não será especificado se a viagem não estiver atribuída a um veículo ou se estiver inativa (concluída ou cancelada).

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

remainingWaypointsVersion

string (Timestamp format)

Apenas saída. Indica a última vez que remainingWaypoints foi alterado (um waypoint foi adicionado, removido ou alterado).

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

remainingWaypointsRouteVersion

string (Timestamp format)

Apenas saída. Indica a última vez que remainingWaypoints.path_to_waypoint e remainingWaypoints.traffic_to_waypoint foram modificados. O app cliente precisa armazenar esse valor em cache e transmiti-lo em GetTripRequest para garantir que os caminhos e o tráfego de remainingWaypoints sejam retornados apenas se atualizados.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

numberOfPassengers

integer

Imutável. Indica o número de passageiros na viagem e não inclui o motorista. Um veículo precisa ter capacidade disponível para ser retornado em uma resposta vehicles.search.

lastLocation

object (VehicleLocation)

Apenas saída. Indica o último local informado do veículo ao longo do trajeto.

lastLocationSnappable

boolean

Apenas saída. Indica se o lastLocation do veículo pode ser fixado no currentRouteSegment. False se lastLocation ou currentRouteSegment não existir. Ele é calculado pelo Fleet Engine. Todas as atualizações de clientes serão ignoradas.

view

enum (TripView)

O subconjunto de campos "Viagem" preenchidos e como eles devem ser interpretados.

TripStatus

O status de uma viagem indicando a progressão dela.

Enums
UNKNOWN_TRIP_STATUS Padrão, usado para status de viagem não especificado ou não reconhecido.
NEW Viagem recém-criada.
ENROUTE_TO_PICKUP O motorista está a caminho do ponto de partida.
ARRIVED_AT_PICKUP O motorista chegou ao ponto de embarque.
ARRIVED_AT_INTERMEDIATE_DESTINATION O motorista chegou a um destino intermediário e está esperando o passageiro.
ENROUTE_TO_INTERMEDIATE_DESTINATION O motorista está a caminho de um destino intermediário (não do ponto de desembarque).
ENROUTE_TO_DROPOFF O motorista pegou o passageiro e está a caminho do próximo destino.
COMPLETE O passageiro foi desembarcado e a viagem foi concluída.
CANCELED A viagem foi cancelada antes do embarque pelo motorista, passageiro ou provedor de transporte por aplicativo.

StopLocation

O local real em que ocorreu uma parada (embarque/desembarque).

Representação JSON
{
  "point": {
    object (LatLng)
  },
  "timestamp": string,
  "stopTime": string
}
Campos
point

object (LatLng)

Obrigatório. Indica o local real.

timestamp

string (Timestamp format)

Indica quando a parada ocorreu.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

stopTime
(deprecated)

string (Timestamp format)

Somente entrada. Obsoleto. Use o campo de carimbo de data/hora.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

TripView

Seletor para diferentes conjuntos de campos "Viagem" em uma resposta trips.get. Consulte AIP-157 para contexto. Outras visualizações provavelmente serão incluídas.

Enums
TRIP_VIEW_UNSPECIFIED O valor padrão. Para garantir a compatibilidade com versões anteriores, a API vai usar uma visualização do SDK por padrão. Para garantir a estabilidade e o suporte, aconselhamos os clientes a selecionar um TripView diferente de SDK.
SDK Inclui campos que podem não ser interpretáveis ou compatíveis com bibliotecas disponíveis publicamente.
JOURNEY_SHARING_V1S Os campos de viagem são preenchidos para o caso de uso de compartilhamento de trajeto. Essa visualização é destinada a comunicações de servidor para servidor.

Métodos

create

Cria uma viagem no Fleet Engine e a retorna.

get

Receber informações sobre uma única viagem.
Receber todas as viagens de um veículo específico.

update

Atualiza os dados da viagem.