O que é uma viagem sob demanda?

A documentação nesta seção mostra como criar e trabalhar com viagens usando o serviço de viagens on demand do Google Maps Mobility. Ele pressupõe 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 do gRPC.

No Fleet Engine para serviços sob demanda, uma viagem é um tipo de jornada que modela o atendimento de uma entrega de comida ou uma solicitação de viagem dos seus consumidores. Uma viagem tem um status que você informa ao Fleet Engine conforme a jornada evolui, como NEW, ENROUTE_TO_PICKUP e muito mais. O status da viagem corresponde aos waypoints geolocalizados atribuídos ao veículo, e o Fleet Engine modifica esses waypoints a cada atualização de viagem que você faz. Consulte Viagens on demand em Noções básicas do Fleet Engine para saber mais sobre viagens e a relação delas com os veículos.

Ciclo de uma viagem

Para monitorar cada viagem no Fleet Engine, primeiro é preciso 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 as etapas do ciclo de vida dela no Fleet Engine. Ele pressupõe que você configurou o Fleet Engine e tem um veículo para atribuir à viagem, com as atualizações de local ativadas no app do motorista. Consulte SDK do Driver: viagens sob demanda.

1 Receber pedido de reserva. Antes de uma viagem do Fleet Engine começar, seu sistema de reservas recebe uma solicitação de viagem ou entrega de um consumidor pelo app ou outro sistema de reservas. Em seguida, seu sistema cria a entidade de viagem usando CreateTrip com os campos obrigatórios, como o local de retirada. Ele também pode definir outros campos nesse momento, como passageiros e local de desembarque, ou aguardar até atribuir um veículo. Consulte Criar uma viagem com um único destino.
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 Pesquisar veículo para procurar veículos, filtrando por atributos de viagem e de veículo para encontrar o melhor veículo para concluir a viagem. Qualquer veículo on-line dentro do raio de pesquisa informa a proximidade por meio de atualizações de local fornecidas pelo SDK do Driver.

Depois que 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 atribuído à viagem NEW.

3 Atualizar viagem. Depois que o motorista aceita a viagem e começa a navegar até o local de retirada, seu sistema atualiza o status da viagem de NEW para ENROUTE_TO_PICKUP. Você continua a consultar o local do veículo durante toda a viagem, seja por uma conexão direta do app com seu back-end ou consultando o Fleet Engine, que recebe um fluxo contínuo de atualizações de local do veículo do SDK do Driver. Em seguida, seu sistema informa cada marco da jornada ao Fleet Engine, que atualiza a lista de waypoints do veículo de acordo.
4 Compartilhar 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 da viagem e mostrá-las no aplicativo para o consumidor. O Fleet Engine atualiza automaticamente o HEC, a distância restante, as rotas e os waypoints restantes do veículo. Consulte Compartilhar trajetos para viagens on demand para mais informações.
5 Viagem completa. Quando o veículo chega ao ponto de passagem de destino da viagem e o motorista indica que ela foi concluída, o sistema define o TripStatus como COMPLETE no Fleet Engine. Como os veículos, as entidades de viagem permanecem ativas no Fleet Engine por sete dias, independentemente do status, e depois são removidas.

Fluxo da sequência de viagens

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

TripSequenceDiagram

A seguir