O que é uma viagem sob demanda?
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
A documentação nesta seção mostra como criar e trabalhar com viagens usando
o serviço de viagens sob demanda 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 um pedido de entrega de comida ou de viagem dos seus 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 aos pontos de referência geolocalizados atribuídos ao veículo, e o Fleet Engine modifica esses pontos de referência do veículo a cada atualização de viagem feita. Consulte Viagens sob demanda em Fundamentos do Fleet Engine para saber mais sobre viagens e a relação delas com os veículos.
Ciclo de uma viagem
Para rastrear cada viagem no Fleet Engine, primeiro crie uma entidade Trip
. Consulte gRPC ou REST para referência.
A tabela a seguir descreve um exemplo de fluxo de ponta a ponta de uma viagem criada no
seu sistema e os estágios 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 atualizações de localização
ativadas no app para motoristas. Consulte SDK Driver: viagens sob demanda.
1 |
Receba um pedido de agendamento. |
Antes de uma viagem do Fleet Engine começar, seu sistema de reservas primeiro recebe um pedido de carona ou entrega de um consumidor pelo seu app ou outro sistema de reservas. Em seguida, o sistema cria a entidade de viagem usando
CreateTrip com campos obrigatórios, como o local de partida.
Ele também pode definir outros campos nesse momento, como passageiros e local de desembarque, ou esperar até que um veículo seja atribuído. 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 Pesquisar veículo para procurar veículos, filtrando por atributos de viagem e 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 atualizações de localização fornecidas pelo SDK Driver.
Quando SearchVehicle retorna um veículo que corresponde a uma viagem, seu
sistema chama o endpoint UpdateTrip para informar o ID do veículo
atribuído à viagem NEW .
|
3 |
Atualizar viagem. |
Quando o motorista aceita a viagem e começa a navegar até o
local de embarque, seu 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 com seu back-end ou pesquisando o Fleet Engine, que recebe um fluxo contínuo de atualizações de localização do veículo pelo SDK Driver. Em seguida, seu sistema informa cada marco da viagem ao Fleet Engine, que atualiza a lista de waypoints do veículo de acordo.
|
4 |
Compartilhe a jornada com o consumidor. |
O Fleet Engine disponibiliza detalhes da viagem e localização do veículo para o SDK do consumidor, que usa um listener para receber atualizações da viagem e mostrá-las no app do consumidor. O Fleet Engine atualiza automaticamente a ETA, 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 destino da viagem e o motorista indica que a viagem foi concluída, seu sistema define o TripStatus como COMPLETE no Fleet Engine. Assim como os veículos, as entidades de viagem permanecem ativas no Fleet Engine por sete dias, independentemente do status. Depois disso, elas são removidas. |
Fluxo de sequência de viagens
O diagrama a seguir mostra uma visão mais detalhada desse fluxo.

A seguir
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-08-31 UTC.
[null,null,["Última atualização 2025-08-31 UTC."],[[["\u003cp\u003eThis documentation provides a comprehensive guide on utilizing the Google Maps Mobility on-demand trips service for managing and tracking trips.\u003c/p\u003e\n"],["\u003cp\u003eYou should have a foundational understanding of Fleet Engine, Vehicle Basics, and Trip Basics for on-demand services.\u003c/p\u003e\n"],["\u003cp\u003eFleet Engine's \u003ccode\u003eTripService\u003c/code\u003e enables the creation, assignment, updating, and completion of trips through gRPC or REST.\u003c/p\u003e\n"],["\u003cp\u003eTrips represent journeys fulfilling consumer requests, evolving through various statuses like \u003ccode\u003eNEW\u003c/code\u003e, \u003ccode\u003eENROUTE_TO_PICKUP\u003c/code\u003e, and \u003ccode\u003eCOMPLETE\u003c/code\u003e, influencing vehicle waypoints.\u003c/p\u003e\n"],["\u003cp\u003eThe trip lifecycle includes booking, vehicle assignment, status updates, consumer journey sharing, and completion, all managed through Fleet Engine interactions.\u003c/p\u003e\n"]]],[],null,["The documentation in this section shows how to create and work with trips using\nthe Google Maps Mobility on-demand trips service. It assumes familiarity with\nthe following:\n\n- **Fleet Engine** : You should be familiar with Fleet Engine implementation details, request mechanisms, and security. For that, see [What is the Fleet\n Engine service?](/maps/documentation/mobility/fleet-engine/essentials) and the security topics in [Set up Fleet Engine](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet).\n- **Vehicles basics** for on-demand services. See [Introduction to vehicles](/maps/documentation/mobility/fleet-engine/essentials/vehicles-intro).\n- **Trip basics** for on-demand services. See [On-demand trips](/maps/documentation/mobility/fleet-engine/essentials/trip-intro).\n\nThe `TripService` that you'll use is available for [gRPC](/maps/documentation/mobility/fleet-engine/reference/trips/rpc/maps.fleetengine.v1#tripservice) and [REST](/maps/documentation/mobility/fleet-engine/reference/trips/rest/v1/providers.trips).\nFor simplicity sake, field references follow the gRPC convention.\n\nIn Fleet Engine for on-demand services, a trip is a type of journey that models\nthe fulfillment of a food delivery or ride request from your consumers. A trip\nhas a status that you report to Fleet Engine as the journey evolves, such as\n`NEW`, `ENROUTE_TO_PICKUP`, and more. The trip status corresponds to geo-located\nwaypoints assigned to the vehicle, and Fleet Engine modifies these vehicle\nwaypoints with each trip update you make. See [On demand trips](/maps/documentation/mobility/fleet-engine/essentials/trip-intro) in **Fleet\nEngine essentials** for more about trips and their relationship to vehicles.\n\nLife of a trip\n\nIn order to track each trip in Fleet Engine, you must first create a `Trip`\nentity. See either [gRPC](/maps/documentation/mobility/fleet-engine/reference/trips/rpc/maps.fleetengine.v1#maps.fleetengine.v1.Trip) or [REST](/maps/documentation/mobility/fleet-engine/reference/trips/rest/v1/providers.trips) for reference.\n\nThe following table describes an example end-to-end flow of a trip created in\nyour system and its lifecycle stages in Fleet Engine. It assumes you have set up\nFleet Engine and have a vehicle to assign to the trip, with location updates\nenabled in the driver app. See [Driver SDK: On-demand trips](/maps/documentation/mobility/driver-sdk/on-demand).\n\n|---|----------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| 1 | **Receive booking request.** | Before a Fleet Engine trip begins, your booking system first receives a request for a ride or delivery from a consumer through your app or other booking system. Your system then creates the trip entity using `CreateTrip` with required fields, such as the pickup location. It can also set other fields at this point, such passengers and dropoff location, or wait until it assigns a vehicle. See [Create a single-destination trip](/maps/documentation/mobility/fleet-engine/journeys/trips/create-trip). |\n| 2 | **Assign vehicle.** | You can either assign vehicles to trips directly within your system and report the assignment to Fleet Engine, or you can use the [Search Vehicle](/maps/documentation/mobility/fleet-engine/essentials/vehicles/on-demand-search-vehicle) service to search for vehicles, filtering by both trip and vehicle attributes to find the best vehicle to complete the journey. Any online vehicle within your search radius makes their proximity known through location updates provided by the Driver SDK. Once `SearchVehicle` returns a vehicle that you match to a trip, your system calls the `UpdateTrip` endpoint to report the vehicle ID you assigned to the `NEW` trip. |\n| 3 | **Update trip.** | Once the driver accepts the trip and begins navigating to the pickup location, your system updates the trip status from `NEW` to `ENROUTE_TO_PICKUP`. You continue to poll the vehicle location throughout the journey, either through a direct connection from the app to your backend, or by polling Fleet Engine, which receives an ongoing stream of vehicle location updates from the Driver SDK. Your system then reports each journey milestone to Fleet Engine, which updates the vehicle's waypoint list accordingly. |\n| 4 | **Share journey with consumer.** | Fleet Engine makes trip details and vehicle location available to the Consumer SDK, which uses a listener to receive trip updates and display them in the consumer app. Fleet Engine automatically updates ETA, remaining distance, routes, and remaining vehicle waypoints. See [Share journeys for on-demand trips](/maps/documentation/mobility/journey-sharing/on-demand) for more information. |\n| 5 | **Complete trip.** | Once the vehicle reaches the destination waypoint of the trip and your driver indicates a successful trip, your system sets the `TripStatus` to `COMPLETE` in Fleet Engine. Keep in mind that, like vehicles, trip entities remain active within Fleet Engine for 7 days regardless of status, at which point they are removed. |\n\nTrip sequence flow\n\nThe following diagram shows a more detailed view of this flow.\n\nWhat's next\n\n- [Create a single-destination trip](/maps/documentation/mobility/fleet-engine/journeys/trips/create-trip)"]]