舰队跟踪架构和组件

实现舰队跟踪涉及到使用多个最后一公里舰队解决方案组件,包括 Fleet Engine、JavaScript 舰队跟踪库和驱动程序 SDK:

  • Fleet Engine 是“最后一公里舰队解决方案”后端服务。它负责管理任务和车辆状态。它可处理驱动程序 SDK、JavaScript 舰队跟踪库和您的后端服务之间的交互,该服务可通过进行 REST 或 gRPC 调用与 Fleet Engine 通信。
  • JavaScript 车队跟踪库可以集成到您的内部车队管理应用中,使您可以直观呈现车辆位置和其他装运信息。
  • Driver SDK 是您集成到驾驶员应用中的库。它负责使用驾驶员的位置、路线、剩余距离和预计到达时间更新 Fleet Engine。此外,它还与 Navigation SDK 集成,后者可为驾驶员提供精细导航说明。如需了解详情,请参阅使用 Google 地图导航

下图显示了这些组件之间的关系:

架构

送货车辆和任务

若要创建 Fleet Performance 应用来模拟货物的取货和交付,涉及以下内容:

  • 用于运输货物的送货车辆。
  • 货物自提和配送任务。

送货车辆

送货车辆用于将货物从仓库运送到送货地点,以及从取货地点运送到仓库。在某些情况下,他们还可以将货物直接从取货地点运送到送货地点。

任务

每辆车都有分配给它的任务。包括取货或送货任务、司机需要的休息时间,或保管箱或其他地点的预定停靠站。每项任务都必须有唯一的任务 ID,但可以共用同一跟踪 ID。任务及其调度顺序用于计算每项任务的预计到达时间。

装运任务与发货或下车有关。 创建运单任务时,您必须指定跟踪编号或 ID。 您还必须指定停留时间,以考虑到完成任务、寻找停车位或步行前往交接点需要更多时间。

  • 创建提货任务,用于指定提货位置和跟踪编号或 ID。
  • 创建用于交付货物的送货任务,指定送货地点和跟踪编号或 ID。

您还可以针对无法接送或送餐的时间段创建不可用任务,并为配送车辆将停止建模的计划停止任务。但是,您不能将 tracking_id 分配给不可用任务或计划停止。因此,您无法直接对不可用任务或计划停止执行舰队跟踪。

示例流程

以下序列图显示了典型的舰队跟踪流程。

流程图

如需开始实现装运跟踪,请参阅使用 JavaScript 舰队跟踪库跟踪您的舰队