什么是 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