O que é uma viagem sob demanda?

A documentação desta seção mostra como criar e trabalhar com viagens usando o serviço de viagens sob demanda da Mobility do Google Maps. Pressupomos que você tenha familiaridade com o seguinte:

O TripService que você vai usar está disponível para gRPC e REST. Para simplificar, as referências de campo seguem a convenção gRPC.

No Fleet Engine para serviços sob demanda, uma viagem é um tipo de jornada que modela a realização de um pedido de entrega de comida ou de transporte dos consumidores. Uma viagem tem um status que você informa ao Motor de frota à medida que a jornada evolui, como NEW, ENROUTE_TO_PICKUP e muito mais. O status da viagem corresponde a pontos de passagem com localização geográfica atribuídos ao veículo, e o Fleet Engine modifica esses pontos de passagem a cada atualização de viagem feita. Consulte Viagens sob demanda em Noções básicas do Fleet Engine para saber mais sobre as viagens e a relação delas com os veículos.

Vida útil de uma viagem

Para rastrear cada viagem no Fleet Engine, primeiro é necessário criar uma entidade Trip. Consulte gRPC ou REST para referência.

A tabela a seguir descreve um exemplo de fluxo completo de uma viagem criada no seu sistema e os estágios do ciclo de vida no Fleet Engine. Ele pressupõe que você tenha configurado o Fleet Engine e tenha um veículo para atribuir à viagem, com atualizações de local ativadas no app do motorista. Consulte SDK do motorista: viagens sob demanda.

1 Receber solicitação de agendamento. Antes do início de uma viagem do Fleet Engine, seu sistema de reserva recebe uma solicitação de transporte ou entrega de um consumidor pelo app ou outro sistema de reserva. Seu sistema cria a entidade da viagem usando CreateTrip com campos obrigatórios, como o local de retirada. Ele também pode definir outros campos nesse ponto, como passageiros e local de entrega, ou esperar até atribuir um veículo. Consulte Criar uma viagem de destino único.
2 Atribuir veículo.

Você pode atribuir veículos a viagens diretamente no seu sistema e informar a atribuição ao Fleet Engine ou usar o serviço Search Vehicle para pesquisar veículos, filtrando por atributos de viagem e de veículo para encontrar o melhor veículo para concluir a jornada. Qualquer veículo on-line dentro do raio de pesquisa informa a proximidade por meio de atualizações de localização fornecidas pelo SDK do motorista.

Quando SearchVehicle retornar um veículo que você associou a uma viagem, seu sistema vai chamar o endpoint UpdateTrip para informar o ID do veículo que você atribuiu à viagem NEW.

3 Atualizar a viagem. Quando o motorista aceita a viagem e começa a navegar até o local de embarque, o sistema atualiza o status da viagem de NEW para ENROUTE_TO_PICKUP. Você continua pesquisando a localização do veículo durante toda a viagem, seja por uma conexão direta do app ao back-end ou pesquisando o Fleet Engine, que recebe um fluxo contínuo de atualizações de localização do veículo do SDK do Driver. Seu sistema informa cada marco da viagem ao Fleet Engine, que atualiza a lista de waypoints do veículo.
4 Compartilhe a jornada com o consumidor. O Fleet Engine disponibiliza os detalhes da viagem e a localização do veículo para o SDK do consumidor, que usa um listener para receber atualizações de viagem e exibi-las no app do consumidor. O Fleet Engine atualiza automaticamente a hora estimada de chegada, a distância restante, as rotas e os waypoints restantes do veículo. Consulte Compartilhar trajetos para viagens sob demanda para mais informações.
5 Concluir a viagem. Quando o veículo chega ao ponto de passagem de destino da viagem e o motorista indica que a viagem foi concluída, o sistema define TripStatus como COMPLETE no Fleet Engine. Lembre-se de que, assim como os veículos, as entidades de viagem permanecem ativas no Fleet Engine por sete dias, independentemente do status. A partir desse momento, elas são removidas.

Fluxo de sequência de viagens

O diagrama a seguir mostra uma visão mais detalhada desse fluxo.

TripSequenceDiagram

A seguir