¿Qué es un viaje a pedido?

En la documentación de esta sección, se muestra cómo crear viajes y trabajar con ellos usando el servicio de viajes on demand de Google Maps Mobility. Se da por sentado que tienes conocimientos sobre lo siguiente:

El TripService que usarás está disponible para gRPC y REST. Para simplificar, las referencias de campo siguen la convención de gRPC.

En Fleet Engine para servicios on demand, un viaje es un tipo de recorrido que modela la entrega de comida o la solicitud de viaje de tus consumidores. Un viaje tiene un estado que informas a Fleet Engine a medida que avanza, como NEW, ENROUTE_TO_PICKUP y mucho más. El estado del viaje corresponde a los puntos de referencia geolocalizados asignados al vehículo, y Fleet Engine modifica estos puntos de referencia del vehículo con cada actualización de viaje que realizas. Consulta Viajes on demand en Conceptos básicos de Fleet Engine para obtener más información sobre los viajes y su relación con los vehículos.

Ciclo de vida de un viaje

Para hacer un seguimiento de cada viaje en Fleet Engine, primero debes crear una entidad Trip. Consulta gRPC o REST para obtener más información.

En la siguiente tabla, se describe un ejemplo de flujo de extremo a extremo de un viaje creado en tu sistema y sus etapas del ciclo de vida en Fleet Engine. Se supone que configuraste Fleet Engine y tienes un vehículo para asignar al viaje, con las actualizaciones de ubicación habilitadas en la app para conductores. Consulta SDK de Driver: Viajes on demand.

1 Recibe la solicitud de reserva. Antes de que comience un viaje de Fleet Engine, tu sistema de reservas recibe primero una solicitud de viaje o entrega de un consumidor a través de tu app o de otro sistema de reservas. Luego, tu sistema crea la entidad de viaje con CreateTrip con los campos obligatorios, como la ubicación de partida. También puede establecer otros campos en este punto, como los pasajeros y la ubicación de llegada, o esperar hasta que asigne un vehículo. Consulta Cómo crear un viaje con un solo destino.
2 Asignar vehículo

Puedes asignar vehículos a viajes directamente en tu sistema y, luego, informar la asignación a Fleet Engine, o bien puedes usar el servicio Search Vehicle para buscar vehículos y filtrar por atributos de viaje y de vehículo para encontrar el mejor vehículo para completar el viaje. Cualquier vehículo en línea dentro de tu radio de búsqueda da a conocer su proximidad a través de las actualizaciones de ubicación que proporciona el SDK de Driver.

Una vez que SearchVehicle devuelve un vehículo que asignas a un viaje, tu sistema llama al extremo UpdateTrip para informar el ID del vehículo que asignaste al viaje NEW.

3 Actualizar viaje Una vez que el conductor acepta el viaje y comienza a navegar hacia la ubicación de recogida, tu sistema actualiza el estado del viaje de NEW a ENROUTE_TO_PICKUP. Sigue sondeando la ubicación del vehículo durante todo el recorrido, ya sea a través de una conexión directa de la app a tu backend o sondeando Fleet Engine, que recibe un flujo continuo de ubicaciones actualizadas del vehículo desde el SDK de Driver. Luego, tu sistema informa cada hito del viaje a Fleet Engine, que actualiza la lista de puntos de referencia del vehículo según corresponda.
4 Comparte el viaje con el consumidor. Fleet Engine pone los detalles del viaje y la ubicación del vehículo a disposición del SDK para consumidores, que usa un objeto de escucha para recibir actualizaciones del viaje y mostrarlas en la aplicación para consumidores. Fleet Engine actualiza automáticamente la hora estimada de llegada, la distancia restante, las rutas y los puntos de referencia restantes del vehículo. Consulta Cómo compartir recorridos para viajes on demand para obtener más información.
5 Completa el viaje. Una vez que el vehículo llega al punto de referencia de destino del viaje y el conductor indica que el viaje se completó correctamente, tu sistema establece el TripStatus en COMPLETE en Fleet Engine. Ten en cuenta que, al igual que los vehículos, las entidades de viaje permanecen activas en Fleet Engine durante 7 días, independientemente del estado, momento en el que se quitan.

Flujo de la secuencia de viajes

En el siguiente diagrama, se muestra una vista más detallada de este flujo.

TripSequenceDiagram

¿Qué sigue?