本部分中的文档介绍了如何使用 Google Maps Mobility 按需行程服务。本教程假定您熟悉 以下:
- Fleet Engine:您应熟悉 Fleet Engine 实现 请求机制和安全机制有关详情,请参阅什么是舰队 Engine 服务?和设置 Fleet Engine 中的安全主题。
- 面向按需服务的车辆基础知识。请参阅 车辆简介。
- 针对按需服务的行程基础知识。请参阅按需行程。
您将使用的 TripService
适用于 gRPC 和 REST。
为简单起见,字段引用遵循 gRPC 惯例。
在用于按需服务的 Fleet Engine 中,行程是一种模拟流程,
客户完成送餐或约车请求。旅程
会随着历程的推进向 Fleet Engine 报告一个状态,例如
NEW
、ENROUTE_TO_PICKUP
等。行程状态对应的是
Fleet Engine 会修改这些车辆
并为每个行程更新添加一个航点查看“舰队”中的按需行程
引擎基础知识,详细了解行程及其与车辆的关系。
行程生命周期
为了在 Fleet Engine 中跟踪每个行程,您必须先创建一个 Trip
实体。如需参考信息,请参阅 gRPC 或 REST。
下表介绍了在 Fleet Engine 中的系统及其生命周期阶段。它假定您已设置 Fleet Engine 和一辆可分配给行程的车辆,可更新位置信息 。请参阅驱动程序 SDK:按需行程。
1 | 接收预订请求。 | 在 Fleet Engine 行程开始之前,您的预订系统会先收到
通过您的应用或其他平台请求消费者叫车或送餐
预订系统然后,您的系统使用
包含必填字段(例如自提地点)的 CreateTrip 。
它还会在此时间点设置其他字段,例如乘客和
下车点,或等待其分配车辆。请参阅
创建单目的地行程。 |
2 | 分配车辆。 | 您可以直接在系统中为行程分配车辆 并将分配情况报告给 Fleet Engine,或者,您也可以使用 搜索车辆 搜索车辆的服务,支持按行程和车辆过滤 属性,以找到完成该行程的最佳车辆。任何在线 如果您位于搜索半径范围内,车辆便可通过 驱动程序 SDK 提供的位置信息更新。 如果 |
3 | 更新行程。 | 司机接受行程并开始导航到
自提位置,您的系统会通过 NEW 更新行程状态
至 ENROUTE_TO_PICKUP 。您继续对车辆进行投票
客户在整个历程中始终关注某个地点,
或者通过轮询 Fleet Engine,Fleet Engine 会接收
来自驱动程序 SDK 的持续车辆位置信息更新数据流。您的
系统随后会向 Fleet Engine 报告每个旅程里程碑,
并相应地生成车辆的航点列表
|
4 | 与消费者分享购买历程。 | Fleet Engine 将行程详情和车辆位置提供给 使用方 SDK,该 SDK 使用监听器来接收行程更新并显示它们 在消费者应用中。Fleet Engine 会自动更新预计到达时间,剩余时间 距离、路线和剩余交通工具航点。请参阅 如需了解详情,分享按需行程的历程。 |
5 | 完成行程。 | 一旦车辆到达行程的目的地航点,且您的
司机表明行程成功,您的系统就会设置
Fleet Engine 中的 TripStatus 到 COMPLETE 。保留
请注意,就像车辆一样,行程实体在 Fleet Engine 中保持活跃状态
7 天(无论其处于何种状态),此后就会被移除。 |
行程序列流程
下图更详细地展示了此流程。