什么是按需行程?

本部分中的文档介绍了如何使用 Google Maps Mobility 按需行程服务。本教程假定您熟悉 以下:

您将使用的 TripService 适用于 gRPCREST。 为简单起见,字段引用遵循 gRPC 惯例。

在用于按需服务的 Fleet Engine 中,行程是一种模拟流程, 客户完成送餐或约车请求。旅程 会随着历程的推进向 Fleet Engine 报告一个状态,例如 NEWENROUTE_TO_PICKUP等。行程状态对应的是 Fleet Engine 会修改这些车辆 并为每个行程更新添加一个航点查看“舰队”中的按需行程 引擎基础知识,详细了解行程及其与车辆的关系。

行程生命周期

为了在 Fleet Engine 中跟踪每个行程,您必须先创建一个 Trip 实体。如需参考信息,请参阅 gRPCREST

下表介绍了在 Fleet Engine 中的系统及其生命周期阶段。它假定您已设置 Fleet Engine 和一辆可分配给行程的车辆,可更新位置信息 。请参阅驱动程序 SDK:按需行程

1 接收预订请求。 在 Fleet Engine 行程开始之前,您的预订系统会先收到 通过您的应用或其他平台请求消费者叫车或送餐 预订系统然后,您的系统使用 包含必填字段(例如自提地点)的 CreateTrip。 它还会在此时间点设置其他字段,例如乘客和 下车点,或等待其分配车辆。请参阅 创建单目的地行程
2 分配车辆

您可以直接在系统中为行程分配车辆 并将分配情况报告给 Fleet Engine,或者,您也可以使用 搜索车辆 搜索车辆的服务,支持按行程和车辆过滤 属性,以找到完成该行程的最佳车辆。任何在线 如果您位于搜索半径范围内,车辆便可通过 驱动程序 SDK 提供的位置信息更新。

如果SearchVehicle退回与行程匹配的车辆,您的 系统调用 UpdateTrip 端点来报告车辆 ID 您分配给“NEW”行程。

3 更新行程。 司机接受行程并开始导航到 自提位置,您的系统会通过 NEW 更新行程状态 至 ENROUTE_TO_PICKUP。您继续对车辆进行投票 客户在整个历程中始终关注某个地点, 或者通过轮询 Fleet Engine,Fleet Engine 会接收 来自驱动程序 SDK 的持续车辆位置信息更新数据流。您的 系统随后会向 Fleet Engine 报告每个旅程里程碑, 并相应地生成车辆的航点列表
4 与消费者分享购买历程。 Fleet Engine 将行程详情和车辆位置提供给 使用方 SDK,该 SDK 使用监听器来接收行程更新并显示它们 在消费者应用中。Fleet Engine 会自动更新预计到达时间,剩余时间 距离、路线和剩余交通工具航点。请参阅 如需了解详情,分享按需行程的历程
5 完成行程。 一旦车辆到达行程的目的地航点,且您的 司机表明行程成功,您的系统就会设置 Fleet Engine 中的 TripStatusCOMPLETE。保留 请注意,就像车辆一样,行程实体在 Fleet Engine 中保持活跃状态 7 天(无论其处于何种状态),此后就会被移除。

行程序列流程

下图更详细地展示了此流程。

TripSequenceDiagram

后续步骤