什么是 Fleet Engine 服务?

Fleet Engine 是一项后端服务,可与您用于为客户管理交通服务的系统集成。它可与各种 API 和 SDK 互操作,以增强地图绘制、路线规划和位置管理功能。

Fleet Engine 可为根据您的真实车队建模的车辆实体提供路线和状态更新。当您的系统向车队引擎发送车辆进度更新时,车队引擎会使用 Driver SDK 提供的实时车辆位置和路线信息,提供有关车辆行程的准确报告:预计到达时间、交通信息和车辆空闲情况。

Fleet Engine

Fleet Engine 服务可与以下两项移动服务产品搭配使用:

  • 按需行程:在此产品中,Fleet Engine 会对行程的生命周期进行建模,从起点到经停点再到下车点。在行程生命周期中,车辆会经过上车点、中间路点和下车点,以便执行由消费者请求预订的行程。如需详细了解随叫车服务,请参阅随叫车服务文档。
  • 安排的任务:在此产品中,车队引擎会对配送或服务任务的生命周期进行建模,其中行程沿途的每个经停点都需要驾驶员完成一项或多项安排的任务。任务可以包括传送文件包或完成服务调用。如需详细了解定时任务,请参阅定时任务文档。

Fleet Engine 的功能

使用车队引擎组件,您可以执行以下操作:

  • 启用乘客行程跟踪:对于按需行程,您可以使用 Fleet Engine 的乘客体验功能,并将乘客 SDK 集成到您的移动应用或 Web 应用中。这样,您的消费者就可以使用同一应用发出行程请求并跟踪行程。
  • 为客户提供实时文件包信息:对于安排的任务,您可以使用 Fleet Engine 的消费者体验功能,并将 JavaScript 消费者 SDK 集成到您的 Web 应用中。这样,您就可以向消费者提供有关其文件包状态的近乎实时更新。该 SDK 提供内置过滤器和数据隐私设置,以便消费者仅看到与其订单相关的信息。
  • 设计车队运营商解决方案:对于安排的任务,请使用 JavaScript 车队跟踪库,以便车队运营商更好地协调和管理全天车辆分配。
  • 提升司机体验:Driver SDK 是一款移动应用工具包,也是 Fleet Engine 的一项基本组件。它使用车辆的功能。借助此 SDK,您的驾车应用既可以管理工作分配,又可以启用驾驶员导航和路线功能。该 SDK 的核心是,当您的司机开始驾驶时,使用事件监听器将位置信息更新发送到车队引擎。它还会向车队引擎发送有关车辆状态的信号。借助此 SDK,您的司机可以使用单一应用来管理分配和导航,就像使用面向消费者的 Google 地图一样,而无需切换到其他应用。

更具体地说,您可以通过这些解决方案提供以下内容:

按需行程

  • 驾驶员车辆的实时路面拍摄位置。
  • 带有实时路况信息的实际驾驶路线。
  • 上车点和下车点的预计到达时间。
  • 跟踪单次、多目的地和接连行程。
  • 为多位客户提供同一路线的拼车服务。
  • 列出特定区域内的所有车辆,以便为所请求的乘车找到最合适的车辆。

计划任务

  • 在地图上呈现的实时位置信息更新。
  • 自动调整的预计到达时间,可反映不断变化的情况,例如交通状况。
  • 已完成的任务和待处理的停止操作,以便深入了解可能存在的问题。
  • 经停点数和距离,让客户更加放心。

Fleet Engine 的运作方式

本部分简要介绍了每项移动出行产品的车队引擎系统的运作方式。

按需行程

下图显示了按需行程的两个关键部分:司机启用与车队引擎位置信息共享功能的一天开始,以及使用车队引擎组件简化行程管理的视图。 如需详细了解行程流程,请参阅什么是行程? 按需行程文档中。

计划任务

下图显示了单个司机典型运输工作日的矩阵,以及使用车队跟踪库在车队引擎系统中处理其工作的方式。

注意:您的系统可以同时使用运输跟踪或车队跟踪。借助运单跟踪功能,车队引擎会过滤运单和司机信息,以便客户仅看到与其运单相关的信息。

Fleet Engine 架构

本部分介绍了不同车队引擎产品的系统架构。这两种服务都使用以下内容:

  • 车辆:即时行程和预约任务依赖于车辆,以模拟贵商家用于执行运营的真实车辆。在车队引擎中,车辆实体通过与 Driver SDK 集成的驾驶员应用接收其关联的真实车辆提供的位置信息。车队引擎车辆在两项服务中基本上是并行的实体,但存在一些差异。请阅读车辆简介,了解车队引擎中的车辆。
  • Driver SDK:对于按需和安排的任务,Driver SDK 都是基本组件。Driver SDK 可与您的驾驶员应用集成,并向车队引擎提供位置信息流以及路线信息(车队引擎依赖于这些信息来报告行程的实时状态),以及 ETA 和交通数据等其他信息。
  • Consumer SDK:按需和预定的任务的一个主要优势是 Consumer SDK,用于向消费者报告其乘车、食品配送或预定的包裹配送状态。

按需行程

如需了解车辆、行程和 SDK 的说明,请参阅有关随叫车的相关文档:

  1. 车辆简介
  2. 按需行程
  3. 适用于随叫车的 Driver SDK
  4. 适用于随叫车行的消费者 SDK

计划任务

如需了解传送工具、任务和 SDK,请参阅有关定期任务的相关文档:

  1. 车辆简介
  2. 计划任务
  3. 适用于定时任务的 Driver SDK
  4. 适用于安排的任务的使用方 SDK

资源

按需行程

交通工具
服务 RESTv1.providers.vehicles
gRPCmaps.fleetengine.v1.VehicleService
资源名称 providers/{provider}/vehicles/{vehicle}
行程
服务 RESTv1.providers.trips
gRPCmaps.fleetengine.v1.TripService
资源名称 providers/{provider}/trips/{trip}

计划任务

送货车
资源 RESTproviders.deliveryVehicles
gRPCmaps.delivery.v1
资源名称 providers/{provider}/deliveryVehicles/{vehicle}
任务
服务 RESTproviders.tasks
gRPCmaps.fleetengine.delivery.v1.Task
资源名称 providers/{provider}/tasks/{task}

Fleet Engine 中的资源命名

与所有基于 Google Cloud 的服务一样,在 Fleet Engine 中,资源都有一个名为 names 的唯一标识符,以字符串格式提供。该资源名称的一部分是资源 ID,您在发出创建请求时提供该 ID。不过,舰队引擎资源没有 ID 字段,而是具有仅输出的名称字段,其中包含资源 ID。

Fleet Engine 使用相对资源名称。这些 ID 由集合 ID 和资源 ID 组成,其结构会指明其层次结构。

  • 集合 ID:集合用于存储资源或其他集合。

按需行程

三个集合:providersvehiclestrips

计划任务

三个集合:providersdeliveryVehiclestasks

资源 ID:参考文档中的资源标识符在名称字段中用大括号表示。这些是您在发出创建请求时提供的 ID 对应的变量。

按需行程

  • {provider}:您的 Cloud 项目 ID。每个项目创建一次。
  • {vehicle}:您的车辆资源,用于每次创建车辆,通常会重复用于同一驾驶员-车辆对。
  • {trip}:您的行程资源,用于每一次行程,通常不会重复使用。

计划任务

  • {provider}:您的 Cloud 项目 ID。每个项目创建一次。
  • {vehicle}:您的配送车辆资源,用于每次创建车辆,通常会重复使用同一驾驶员-车辆对。
  • {task}:您的任务资源,用于每个任务,通常不会重复使用。

如需了解详情,请参阅 Google Cloud API 文档中的资源名称部分。

适用于车队引擎的 Google Cloud 日志

Fleet Engine 提供基本日志记录服务,可让您保存其 API 请求和响应载荷。借助这些日志,您可以调试集成、创建监控指标并分析流量模式。

如需了解详情,请参阅 Cloud Logging

如何使用车队引擎

1 设置您的 Cloud 项目

除了启用相关 API 之外,您还将在此步骤中创建各种服务账号角色。

Fleet Engine API 和 SDK 要求使用使用 Cloud 控制台中创建的服务账号签名的 JSON Web 令牌 (JWT)。按照创建 Fleet Engine 项目中的说明操作。如需更好地了解这些角色,请参阅服务账号角色

2 验证您的设置 创建服务账号后,请验证您的设置是否已完成,以及您是否可以创建车辆。此步骤可确保您已解决项目设置期间可能出现的常见授权问题。请按照验证设置下的说明操作。
3 创建您的第一个历程 这涉及创建一辆车辆,并为其添加一组坐标,这些坐标代表按需行程或预定任务沿途的停靠点。如需了解详情,请参阅随叫行程安排的任务的概览内容。
4 测试您的集成 Fleet Engine 服务和组件需要来自车队的实时数据。设计、开发和向车队部署应用可能需要一些时间。因此,最好先使用模拟数据探索集成,然后再进行全面部署。如需了解详情,请参阅设置车队引擎

后续步骤

  1. 了解车队引擎车辆
  2. 了解按需行程安排的任务
  3. 设置 Fleet Engine