本部分中的文档介绍了如何使用 Google 地图移动出行按需行程服务创建和处理行程。它假定您熟悉以下内容:
- Fleet Engine:您应该熟悉 Fleet Engine 实现 详情、请求机制和安全性。为此,请参阅什么是 Fleet Engine 服务?以及设置 Fleet Engine中的安全主题。
- 按需服务的车辆基础知识 。请参阅 车辆简介。
- 按需服务的行程基础知识 。请参阅按需行程。
您将使用的 TripService 适用于 gRPC 和 REST。
为简单起见,字段引用遵循 gRPC 惯例。
在按需服务的 Fleet Engine 中,行程是一种旅程,用于模拟您的客户完成送餐或乘车请求的过程。行程具有一个状态,您需要随着旅程的进展向 Fleet Engine 报告该状态,例如 NEW、ENROUTE_TO_PICKUP 等。行程状态对应于分配给车辆的地理位置航点,并且 Fleet Engine 会在您每次更新行程时修改这些车辆航点。如需详细了解行程及其与车辆的关系,请参阅 Fleet Engine 基础知识 中的 按需行程。
行程的生命周期
如需在 Fleet Engine 中跟踪每个行程,您必须先创建一个 Trip 实体。如需参考,请参阅 gRPC 或 REST。
下表介绍了在您的系统中创建的行程的端到端流程示例及其在 Fleet Engine 中的生命周期阶段。它假定您已设置 Fleet Engine,并且有一辆车辆可分配给行程,并且在司机应用中启用了位置信息更新 。请参阅 Driver SDK:按需行程。
| 1 | 接收预订请求。 | 在 Fleet Engine 行程开始之前,您的预订系统首先通过您的应用或其他
预订系统接收客户的乘车或送货请求。然后,您的系统使用
CreateTrip 和必填字段(例如上车地点)创建行程实体。它还可以在此时设置其他字段,例如乘客和
下车地点,或者等到分配车辆时再设置。请参阅
创建单目的地行程。 |
| 2 | 分配车辆。 | 您可以直接在系统中将车辆分配给行程 并向 Fleet Engine 报告分配情况,也可以使用 搜索车辆 服务搜索车辆,并按行程和车辆属性进行过滤,以找到最适合完成旅程的车辆。搜索半径内的任何在线 车辆都会通过 Driver SDK 提供的位置信息更新来告知其位置。 Once |
| 3 | 更新行程。 | 司机接受行程并开始导航到
上车地点后,您的系统会将行程状态从 NEW
更新为 ENROUTE_TO_PICKUP。您可以在整个旅程中继续轮询车辆位置,方法是通过应用直接连接到后端,或者轮询 Fleet Engine,后者会从 Driver SDK 接收持续的车辆位置信息更新流。然后,您的
系统会向 Fleet Engine 报告每个旅程里程碑,Fleet Engine 会相应地更新
车辆的航点列表。 |
| 4 | 与客户分享旅程。 | Fleet Engine 会向 Consumer SDK 提供行程详细信息和车辆位置,Consumer SDK 会使用监听器接收行程更新并在消费者应用中显示这些更新。Fleet Engine 会自动更新预计到达时间、剩余距离、路线和剩余车辆航点。如需了解详情,请参阅 分享按需行程的旅程。 |
| 5 | 完成行程。 | 当车辆到达行程的目的地航点并且您的
司机表明行程已成功完成时,您的系统会在 Fleet Engine 中将
TripStatus 设置为 COMPLETE。请注意,与车辆一样,行程实体在 Fleet Engine 中会保持活跃状态 7 天,无论其状态如何,之后系统会将其移除。 |
行程序列流
下图更详细地展示了此流程。
