Package maps.fleetengine.delivery.v1

索引

DeliveryService

最后一公里配送服务。

BatchCreateTasks

rpc BatchCreateTasks(BatchCreateTasksRequest) returns (BatchCreateTasksResponse)

创建并返回一批新的 Task 对象。

CreateDeliveryVehicle

rpc CreateDeliveryVehicle(CreateDeliveryVehicleRequest) returns (DeliveryVehicle)

创建并返回新的 DeliveryVehicle

CreateTask

rpc CreateTask(CreateTaskRequest) returns (Task)

创建并返回一个新的 Task 对象。

GetDeliveryVehicle

rpc GetDeliveryVehicle(GetDeliveryVehicleRequest) returns (DeliveryVehicle)

返回指定的 DeliveryVehicle 实例。

GetTask

rpc GetTask(GetTaskRequest) returns (Task)

获取有关 Task 的信息。

GetTaskTrackingInfo

rpc GetTaskTrackingInfo(GetTaskTrackingInfoRequest) returns (TaskTrackingInfo)

返回指定的 TaskTrackingInfo 实例。

ListDeliveryVehicles

rpc ListDeliveryVehicles(ListDeliveryVehiclesRequest) returns (ListDeliveryVehiclesResponse)

获取满足指定过滤条件的所有 DeliveryVehicle

ListTasks

rpc ListTasks(ListTasksRequest) returns (ListTasksResponse)

获取满足指定过滤条件的所有 Task

SearchTasks

rpc SearchTasks(SearchTasksRequest) returns (SearchTasksResponse)

已废弃:请改用 GetTaskTrackingInfo

UpdateDeliveryVehicle

rpc UpdateDeliveryVehicle(UpdateDeliveryVehicleRequest) returns (DeliveryVehicle)

将更新后的 DeliveryVehicle 数据写入 Fleet Engine,并将 Tasks 分配给 DeliveryVehicle。您无法更新 DeliveryVehicle 的名称。不过,您可以更新 remaining_vehicle_journey_segments,但它必须包含 DeliveryVehicle 上当前的所有 VehicleJourneySegmentremaining_vehicle_journey_segments 中检索 task_id,其对应的 Tasks 会被分配到 DeliveryVehicle(如果尚未分配)。

UpdateTask

rpc UpdateTask(UpdateTaskRequest) returns (Task)

更新 Task 数据。

BatchCreateTasksRequest

BatchCreateTask 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。注意:如果您设置了此字段,则 CreateTaskRequest 邮件中的标头字段必须为空或必须与此字段匹配。

parent

string

必需。所有任务共享的父级资源。此值必须采用 providers/{provider} 格式。provider 必须是 Google Cloud 项目 ID。例如 sample-cloud-projectCreateTaskRequest 消息中的 parent 字段必须为空或必须与此字段匹配。

requests[]

CreateTaskRequest

必需。用于指定要创建的资源的请求消息。注意:一个批次最多可以创建 500 个任务。

BatchCreateTasksResponse

BatchCreateTask 响应消息。

字段
tasks[]

Task

已创建的任务。

CreateDeliveryVehicleRequest

CreateDeliveryVehicle 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

parent

string

必需。必须采用 providers/{provider} 格式。提供方必须是 Google Cloud 项目 ID。例如 sample-cloud-project

delivery_vehicle_id

string

必需。送货车辆 ID 必须是唯一的,并且需要遵守以下限制:

  • 必须是有效的 Unicode 字符串。
  • 长度上限为 64 个字符。
  • 根据 Unicode 标准化形式 C 进行了标准化处理。
  • 不得包含以下任何 ASCII 字符:“/”、“:”、“?”、“,”或“#”。
delivery_vehicle

DeliveryVehicle

必需。要创建的 DeliveryVehicle 实体。创建新送货车辆时,您可以设置以下可选字段:

  • last_location
  • 属性

注意:系统将忽略 DeliveryVehicle 的 name 字段。不得设置所有其他 DeliveryVehicle 字段;否则会返回错误。

CreateTaskRequest

CreateTask 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

parent

string

必需。必须采用 providers/{provider} 格式。provider 必须是 Google Cloud 项目 ID。例如 sample-cloud-project

task_id

string

必需。任务 ID 必须是唯一的,但不应是送货跟踪 ID。如需存储运单跟踪 ID,请使用 tracking_id 字段。请注意,多个任务可以具有相同的 tracking_id。任务 ID 受到以下限制:

  • 必须是有效的 Unicode 字符串。
  • 长度上限为 64 个字符。
  • 根据 Unicode 标准化形式 C 进行了标准化处理。
  • 不得包含以下任何 ASCII 字符:“/”、“:”、“?”、“,”或“#”。
task

Task

必需。要创建的任务实体。创建任务时,必须填写以下字段:

  • type
  • state(必须设置为 OPEN
  • tracking_id(不得为 UNAVAILABLESCHEDULED_STOP 任务设置,但对于所有其他任务类型,则必须设置)
  • planned_location(可选,用于 UNAVAILABLE 项任务)
  • task_duration

注意:系统会忽略任务的 name 字段。不得设置所有其他 Task 字段;否则会返回错误。

DeliveryRequestHeader

RequestHeader 包含所有 Delivery RPC 请求通用的字段。

字段
language_code

string

BCP-47 语言代码,例如 en-US 或 sr-Latn。如需了解详情,请参阅 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier。如果未指定,响应可以采用任何语言,如果存在此类名称,则会优先使用英语。字段值示例:en-US

region_code

string

必需。发起请求的区域的 CLDR 地区代码。字段值示例:US

sdk_version

string

发起调用的 SDK 的版本(如果有)。版本格式为“major.minor.patch”,例如:1.1.2

os_version

string

运行调用 SDK 的操作系统的版本。字段值示例:4.4.112.1

device_model

string

运行调用 SDK 的设备的型号。字段值示例:iPhone12,1SM-G920F

sdk_type

SdkType

发送请求的 SDK 类型。

maps_sdk_version

string

发起调用的 SDK 所依赖的 MapSDK 版本(如果适用)。版本格式为“major.minor.patch”,例如:5.2.1

nav_sdk_version

string

调用 SDK 所依赖的 NavSDK 版本(如果适用)。版本格式为“major.minor.patch”,例如:2.1.0

platform

Platform

调用 SDK 的平台。

manufacturer

string

调用方 SDK 中的 Android 设备的制造商,仅适用于 Android SDK。字段值示例:Samsung

android_api_level

int32

发起调用的 SDK 的 Android API 级别,仅适用于 Android SDK。字段值示例:23

trace_id

string

可选 ID,可以出于记录目的而提供,以便识别请求。

平台

调用 SDK 的平台。

枚举
PLATFORM_UNSPECIFIED 默认值。如果省略了平台,则使用此值。
ANDROID 请求来自 Android。
IOS 请求来自 iOS。
WEB 请求来自网络。

SdkType

可能的 SDK 类型。

枚举
SDK_TYPE_UNSPECIFIED 默认值。如果省略 sdk_type,则使用此值。
CONSUMER 发起调用的 SDK 是使用方。
DRIVER 调用 SDK 是驱动程序。
JAVASCRIPT 调用 SDK 是 JavaScript。

DeliveryVehicle

DeliveryVehicle 消息。运输工具用于将货物从仓库运送到送货地点,以及从取货地点传送到仓库。在某些情况下,送货车辆还会直接从取货地点将货物运送到送货地点。

注意:gRPC 和 REST API 使用不同的字段命名惯例。例如,gRPC API 中的 DeliveryVehicle.current_route_segment 字段和 REST API 中的 DeliveryVehicle.currentRouteSegment 字段指的是同一个字段。

字段
name

string

此送货车辆的唯一名称。格式为 providers/{provider}/deliveryVehicles/{vehicle}

last_location

DeliveryVehicleLocation

上次报告的配送车辆位置。

navigation_status

DeliveryVehicleNavigationStatus

送货车辆的导航状态。

current_route_segment

bytes

编码多段线,用于指定导航建议前往下一个航点的路线。您的驾驶员应用会在到达或经过一个停车点以及导航重新规划路线时更新此信息。对于分配给车辆的所有活动任务,这些 LatLng 会在 Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) 或 Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST) 中返回。

在以下几种情况下,可能不使用此字段填充 Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) 或 Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST):

  • current_route_segment 的端点与 DeliveryVehicle.remaining_vehicle_journey_segments[0].stop (gRPC) 或 DeliveryVehicle.remainingVehicleJourneySegments[0].stop (REST) 不匹配。

  • 驱动程序应用最近未更新其位置,因此此字段上次更新的值可能已过时。

  • 驾驶员应用最近更新了其位置信息,但 current_route_segment 已过时,并指向之前一个车辆停靠点。

在这些情况下,Fleet Engine 会使用从最近通过的 VehicleStop 到即将到来的 VehicleStop 的路线填充此字段,以确保此字段的使用者获得有关送货车辆当前路径的最佳信息。

current_route_segment_end_point

LatLng

current_route_segment 的结束位置。目前,驾驶员应用不会填充它,但您可以在 UpdateDeliveryVehicle 调用中提供它。要么是即将到站的车辆停靠点的 LatLng,要么是 current_route_segment 的最后一个 LatLng。然后,Fleet Engine 将尽力插入实际 VehicleStop

如果 current_route_segment 字段为空,则 UpdateDeliveryVehicle 调用中会忽略此字段。

remaining_distance_meters

Int32Value

current_route_segment的剩余行车距离。Driver 应用通常会提供此字段,但在某些情况下,Fleet Engine 会覆盖应用发送的值。如需了解详情,请参阅 DeliveryVehicle.current_route_segment。对于分配给送货车辆的所有有效 TaskTask.remaining_vehicle_journey_segments[0].driving_distance_meters (gRPC) 或 Task.remainingVehicleJourneySegments[0].drivingDistanceMeters (REST) 中会返回此字段。

如果 current_route_segment 字段为空,Fleet Engine 会忽略 UpdateDeliveryVehicleRequest 中的此字段。

remaining_duration

Duration

current_route_segment的剩余行驶时间。Driver 应用通常会提供此字段,但在某些情况下,Fleet Engine 会覆盖应用发送的值。如需了解详情,请参阅 DeliveryVehicle.current_route_segment。对于分配给送货车辆的所有活动任务,Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) 或 Task.remainingVehicleJourneySegments[0].drivingDuration (REST) 中会返回此字段。

如果 current_route_segment 字段为空,Fleet Engine 会忽略 UpdateDeliveryVehicleRequest 中的此字段。

remaining_vehicle_journey_segments[]

VehicleJourneySegment

分配给此配送车辆的行程路段,从车辆最近报告的位置开始。在 ListDeliveryVehicles 的响应中,不会填充此字段。

attributes[]

DeliveryVehicleAttribute

自定义送货车辆属性列表。一辆送货车辆最多可以有 100 个属性,并且每个属性都必须有一个唯一的键。

type

DeliveryVehicleType

此送货车辆的类型。如果未设置,则默认为 AUTO

DeliveryVehicleType

送货车辆的类型。

枚举
DELIVERY_VEHICLE_TYPE_UNSPECIFIED 该值未使用。
AUTO 一辆汽车。
TWO_WHEELER 摩托车、轻便摩托车或其他双轮机动车
BICYCLE 人类驱动的交通工具。
PEDESTRIAN 沿人行道行驶的交通工具,通常是在步行或跑步。

DeliveryVehicleAttribute

以键值对的形式描述车辆属性。“key:value”字符串长度不能超过 256 个字符。

字段
key

string

属性的键。

value

string

属性的值。

联合字段 delivery_vehicle_attribute_value。属性的值,可以是字符串、布尔值或双精度类型。delivery_vehicle_attribute_value 只能是下列其中一项:
string_value

string

字符串类型的属性值。

注意:此字段与最终将被废弃的 value 字段相同。对于创建或更新方法,可以使用任一字段,但强烈建议使用 string_value。如果同时设置了 string_valuevalue,两者必须完全相同,否则系统会抛出错误。系统会在响应中填充这两个字段。

bool_value

bool

布尔值类型的属性值。

number_value

double

双精度类型的属性值。

DeliveryVehicleLocation

车辆在某个时间点的位置、速度和方向。

字段
location

LatLng

车辆的位置。当数据被发送到 Fleet Engine 时,车辆的位置信息是 GPS 位置。当您在响应中收到位置信息时,车辆的位置信息可以是 GPS 位置、补充位置,也可以是其他一些估计位置。来源在 location_sensor 中指定。

horizontal_accuracy
(deprecated)

DoubleValue

已废弃:请改用 latlng_accuracy

latlng_accuracy

DoubleValue

location(以米为单位)的半径(以米为单位)。

heading

Int32Value

车辆行驶的方向(以度为单位)。0 代表北方。有效范围为 [0,360)。

bearing_accuracy
(deprecated)

DoubleValue

已废弃:请改用 heading_accuracy

heading_accuracy

DoubleValue

准确度:heading(度)。

altitude

DoubleValue

高于 WGS84 的高度(以米为单位)。

vertical_accuracy
(deprecated)

DoubleValue

已废弃:请改用 altitude_accuracy

altitude_accuracy

DoubleValue

精确度:altitude(米)。

speed_kmph
(deprecated)

Int32Value

车辆的速度,以公里/小时为单位。已废弃:请改用 speed

speed

DoubleValue

车辆的速度(米/秒)

speed_accuracy

DoubleValue

精确度:speed(米/秒)。

update_time

Timestamp

传感器根据传感器的时钟报告 location 的时间。

server_time

Timestamp

仅限输出。服务器收到位置信息的时间。

location_sensor

DeliveryVehicleLocationSensor

位置数据的提供程序(例如 GPS)。

is_road_snapped

BoolValue

location 是否与道路贴靠。

is_gps_sensor_enabled

BoolValue

仅限输入。指示移动设备是否启用了 GPS 传感器。

time_since_update

Int32Value

仅限输入。自该位置首次发送到服务器以来的时间(以秒为单位)。对于第一次更新,此值将为 0。如果时间未知(例如,当应用重启时),此值会重置为零。

num_stale_updates
(deprecated)

Int32Value

仅限输入。已弃用:现在使用其他信号来确定营业地点是否已过时。

raw_location

LatLng

车辆的原始位置(未经过路虎处理)。

raw_location_time

Timestamp

与原始位置关联的时间戳。

raw_location_sensor

DeliveryVehicleLocationSensor

原始位置的来源。默认为 GPS

raw_location_accuracy

DoubleValue

raw_location 的精度(以米为单位)。

supplemental_location

LatLng

集成应用提供的补充位置。

supplemental_location_time

Timestamp

与补充位置关联的时间戳。

supplemental_location_sensor

DeliveryVehicleLocationSensor

补充位置的来源。默认为 CUSTOMER_SUPPLIED_LOCATION

supplemental_location_accuracy

DoubleValue

supplemental_location 的精度(以米为单位)。

road_snapped
(deprecated)

bool

已废弃:请改用 is_road_snapped

DeliveryVehicleLocationSensor

用于确定位置的传感器或方法。

枚举
UNKNOWN_SENSOR 传感器未指定或未知。
GPS GPS 或辅助 GPS。
NETWORK 辅助 GPS、手机基站 ID 或 WiFi 接入点。
PASSIVE 手机基站 ID 或 Wi-Fi 接入点。
ROAD_SNAPPED_LOCATION_PROVIDER 由移动设备确定为最可能的道路位置的位置。
CUSTOMER_SUPPLIED_LOCATION 由独立来源提供的由客户提供的位置。通常,此值用于从运行驱动程序 SDK 的移动设备以外的来源提供的位置。如果原始来源由其他枚举值之一描述,请使用该值。标记为 CUSTOMER_SUPPLIED_LOCATION 的位置通常通过 DeliveryVehicle 的 last_location.supplemental_location_sensor 提供。
FLEET_ENGINE_LOCATION 由 Fleet Engine 根据可用的信号计算得出的位置。仅限输出。如果在请求中收到此值,该值将被拒绝。
FUSED_LOCATION_PROVIDER Android 的一体化位置信息提供程序。
CORE_LOCATION Apple 操作系统上的位置信息提供程序。

DeliveryVehicleNavigationStatus

车辆的导航状态。

枚举
UNKNOWN_NAVIGATION_STATUS 未指定的导航状态。
NO_GUIDANCE 驱动程序应用的导航处于 FREE_NAV 模式。
ENROUTE_TO_DESTINATION 精细导航功能可用,驾驶员应用导航已进入GUIDED_NAV模式。
OFF_ROUTE 车辆已偏离建议路线。
ARRIVED_AT_DESTINATION 车辆距离目的地大约 50 米以内。

GetDeliveryVehicleRequest

GetDeliveryVehicle 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

name

string

必需。必须采用 providers/{provider}/deliveryVehicles/{delivery_vehicle} 格式。provider 必须是 Google Cloud 项目 ID。例如 sample-cloud-project

GetTaskRequest

GetTask 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

name

string

必需。必须采用 providers/{provider}/tasks/{task} 格式。provider 必须是 Google Cloud 项目 ID。例如 sample-cloud-project

GetTaskTrackingInfoRequest

GetTaskTrackingInfoRequest 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

name

string

必需。必须采用 providers/{provider}/taskTrackingInfo/{tracking_id} 格式。provider 必须是 Google Cloud 项目 ID,tracking_id 必须是与任务关联的跟踪 ID。示例名称可以是 providers/sample-cloud-project/taskTrackingInfo/sample-tracking-id

ListDeliveryVehiclesRequest

ListDeliveryVehicles 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

parent

string

必需。必须采用 providers/{provider} 格式。provider 必须是 Google Cloud 项目 ID。例如 sample-cloud-project

page_size

int32

可选。要返回的车辆数量上限。服务返回的数量可能会少于这个数字。如果您未指定此数字,则服务器会确定要返回的结果数。

page_token

string

可选。从之前的 ListDeliveryVehicles 调用接收的页面令牌。您必须提供该 ID 才能检索后续页面。

进行分页时,提供给 ListDeliveryVehicles 的所有其他参数必须与提供页面令牌的调用匹配。

filter

string

可选。在列出送货车辆时应用的过滤条件查询。有关过滤器语法的示例,请参阅 http://aip.dev/160。如果您不指定值,或者为过滤条件指定空字符串,则返回所有送货车辆。

请注意,ListDeliveryVehicles 仅支持查询车辆属性(例如 attributes.<key> = <value>attributes.<key1> = <value1> AND attributes.<key2> = <value2>)。此外,所有属性都存储为字符串,因此仅支持对属性进行字符串比较。为了与数字或布尔值进行比较,这些值必须用显式引号引起来,才会被视为字符串(例如,attributes.<key> = "10"attributes.<key> = "true")。

一个过滤器查询中所允许的限制数上限为 50。限制是 attribute.<KEY> <COMPARATOR> <VALUE> 形式的查询的一部分,例如,attributes.foo = bar 为 1 项限制。

viewport

Viewport

可选。一个过滤器,用于限制返回的最后已知位置位于视口定义的矩形区域内的车辆。

ListDeliveryVehiclesResponse

ListDeliveryVehicles 响应消息。

字段
delivery_vehicles[]

DeliveryVehicle

符合所要求过滤条件的一组送货车辆。如果未指定任何过滤条件,则请求会返回所有送货车辆。成功的响应也可以为空。空响应表示未找到符合请求的过滤条件的送货车辆。

next_page_token

string

您可以在 ListDeliveryVehiclesRequest 中传递此令牌以继续列出结果。返回所有结果后,此字段不会出现在响应中,或者为空字符串。

total_size

int64

所有页面中符合请求条件的送货车辆总数。

ListTasksRequest

ListTasks 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

parent

string

必需。必须采用 providers/{provider} 格式。provider 必须是 Google Cloud 项目 ID。例如 sample-cloud-project

page_size

int32

可选。要返回的最大任务数。服务返回的值可能小于此值。如果您未指定此值,则服务器会确定要返回的结果数。

page_token

string

可选。从之前的 ListTasks 调用收到的页面令牌。您可以提供此令牌以检索后续页面。

进行分页时,提供给 ListTasks 的所有其他参数必须与提供页面令牌的调用匹配。

filter

string

可选。列出任务时要应用的过滤条件查询。有关过滤器语法的示例,请参阅 http://aip.dev/160。如果您未指定值,或过滤为空字符串,则系统会返回所有任务。如需了解可过滤的任务属性,请参阅列出任务

ListTasksResponse

ListTasks 响应,其中包含满足 ListTasksRequest 中的过滤条件的一组任务。

字段
tasks[]

Task

满足所请求过滤条件的一组任务。如果未指定过滤条件,则请求会返回所有任务。成功的响应也可以为空。空响应表示未找到符合请求的过滤条件的任务。

next_page_token

string

ListTasksRequest 中传递此令牌可继续列出结果。如果已返回所有结果,则此字段为空字符串或不会显示在响应中。

total_size

int64

所有页面中符合请求条件的任务总数。

LocationInfo

包含任何其他标识符的营业地点。

字段
point

LatLng

营业地点的坐标。

SearchTasksRequest

已废弃:改为向 GetTaskTrackingInfo 发出 GetTaskTrackingInfoRequest

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

parent

string

必需。必须采用 providers/{provider} 格式。提供方必须是 Google Cloud 项目 ID。例如 sample-cloud-project

tracking_id

string

必需。所请求的相关任务集的标识符。跟踪 ID 受到以下限制:

  • 必须是有效的 Unicode 字符串。
  • 长度上限为 64 个字符。
  • 根据 Unicode 标准化形式 C 进行了标准化处理。
  • 不得包含以下任何 ASCII 字符:“/”、“:”、“?”、“,”或“#”。
page_size

int32

可选。要返回的最大任务数。服务返回的值可能小于此值。如果您未指定此值,则服务器会确定要返回的结果数。

page_token

string

可选。从之前的 SearchTasks 调用接收的页面令牌。您必须提供此值才能检索后续页面。

进行分页时,提供给 SearchTasks 的所有其他参数必须与提供页面令牌的调用匹配。

SearchTasksResponse

SearchTasks 响应。它包含满足 SearchTasksRequest 中搜索条件的一组任务。

字段
tasks[]

Task

所请求的 tracking_id 的一组 Tasks。成功的响应也可以为空。空响应表示没有任务与提供的 tracking_id 相关联。

next_page_token

string

SearchTasksRequest 中传递此令牌可继续列出结果。如果已返回所有结果,则此字段为空字符串或不会显示在响应中。

任务

Delivery API 中的任务表示要跟踪的单个操作。一般来说,与运单相关的任务和中断任务是有区别的。一个运单可以有多个与之关联的任务。例如,可以有一个针对上车点的任务,以及一个针对下车点或中转站的任务。此外,给定货物的不同任务可以由不同的车辆处理。例如,一辆车可以负责处理取货,将货物送往枢纽,而另一辆车则会将同一货物从交通枢纽驱动到下车点。

注意:gRPC 和 REST API 使用不同的字段命名惯例。例如,gRPC API 中的 Task.journey_sharing_info 字段和 REST API 中的 Task.journeySharingInfo 字段指的是同一个字段。

字段
name

string

必须采用 providers/{provider}/tasks/{task} 格式。

type

Type

必需。不可变。定义任务的类型。例如,中断期或运单。

state

State

必需。Task 的当前执行状态。

task_outcome

TaskOutcome

任务的结果。

task_outcome_time

Timestamp

指明提供程序设置 Task 结果的时间的时间戳。

task_outcome_location

LocationInfo

设置 Task 结果的位置。此值作为 UpdateTask 的一部分进行更新。如果提供程序未明确更新此值,Fleet Engine 会默认使用最近一次的已知车辆位置(原始位置)填充此值。

task_outcome_location_source

TaskOutcomeLocationSource

指示 task_outcome_location 的值的来源。

tracking_id

string

不可变。此字段便于 ID 的存储,让您可以避免使用复杂的映射。您无法为 UNAVAILABLESCHEDULED_STOP 类型的 Tasks 设置 tracking_id。这些 ID 受到以下限制:

  • 必须是有效的 Unicode 字符串。
  • 长度上限为 64 个字符。
  • 根据 Unicode 标准化形式 C 进行了标准化处理。
  • 不得包含以下任何 ASCII 字符:“/”、“:”、“?”、“,”或“#”。
delivery_vehicle_id

string

仅限输出。执行此 Task 的车辆的 ID。送货车辆 ID 受到以下限制:

  • 必须是有效的 Unicode 字符串。
  • 长度上限为 64 个字符。
  • 根据 Unicode 标准化形式 C 进行了标准化处理。
  • 不得包含以下任何 ASCII 字符:“/”、“:”、“?”、“,”或“#”。
planned_location

LocationInfo

不可变。完成任务的位置。UNAVAILABLE 任务的可选参数,但所有其他任务的必需操作。

task_duration

Duration

必需。不可变。在此位置执行任务所需的时间。

target_time_window

TimeWindow

应完成任务的时间范围。

journey_sharing_info

JourneySharingInfo

仅限输出。行程共享专用字段。当状态为 CLOSED 时未填充。

task_tracking_view_config

TaskTrackingViewConfig

任务跟踪的配置,用于指定在什么情况下最终用户可以看到哪些数据元素。

attributes[]

TaskAttribute

自定义 Task 属性列表。每个属性必须具有唯一的键。

JourneySharingInfo

分享特定字段的历程。

字段
remaining_vehicle_journey_segments[]

VehicleJourneySegment

跟踪分配车辆在完成此任务之前将到达的站点的信息。请注意,此列表可以包含来自其他任务的站点。

第一个路段 Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) 或 Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST) 包含从驾驶员最近一次的已知位置到下个VehicleStop的路线信息。当前路线信息通常来自驾驶员应用,DeliveryVehicle.current_route_segment 文档中注明的一些情况除外。Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) 或 Task.journeySharingInfo.remainingVehicleJourneySegments (REST) 中的其他细分受众群由 Fleet Engine 填充。它们提供其余 VehicleStops 之间的路线信息。

last_location

DeliveryVehicleLocation

指明上次报告所分配车辆的位置。

last_location_snappable

bool

指示车辆的 lastLocation 能否与 current_route_segment 对应。如果 last_locationcurrent_route_segment 不存在,则此值为 False。此值由 Fleet Engine 计算。系统会忽略客户端的更新。

状态

Task 的状态。这表示任务的进度。

枚举
STATE_UNSPECIFIED 默认。用于未指定或无法识别的任务状态。
OPEN 任务尚未分配给送货车辆,或者送货车辆尚未到达Task为其指定的停放点。
CLOSED 当车辆经过此任务的车辆停靠点时。

TaskOutcome

尝试执行 Task 的结果。TaskState 关闭后,TaskOutcome 会指示它是否已成功完成。

枚举
TASK_OUTCOME_UNSPECIFIED 设置值之前的任务结果。
SUCCEEDED 任务已成功完成。
FAILED 此任务无法完成,或者已被取消。

TaskOutcomeLocationSource

填充了 task_outcome_location 的来源的身份。

枚举
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED 设置之前的任务结果。
PROVIDER 提供方指定的 task_outcome_location
LAST_VEHICLE_LOCATION 提供程序未指定 task_outcome_location,因此 Fleet Engine 使用最近一次的已知车辆位置。

类型

Task 的类型。

枚举
TYPE_UNSPECIFIED 默认情况下,任务类型未知。
PICKUP 提货任务是指从客户那里提货的操作。仓库或供给车辆取车点应使用 SCHEDULED_STOP 类型。
DELIVERY 交付任务是为最终客户交付货物而执行的操作。仓库或供给车辆下车点应使用 SCHEDULED_STOP 类型。
SCHEDULED_STOP 计划停止任务用于规划目的。例如,它可能表示从供给车辆或仓库中提货。它不应用于最终客户取货或送出的任何货物。
UNAVAILABLE 表示车辆无法维修的任务。例如,当驾驶员休息或给车辆加油时可能会发生这种情况。

TaskAttribute

以键值对的形式描述任务属性。“key:value”字符串长度不能超过 256 个字符。

字段
key

string

属性的键。键不得包含冒号字符 (:)。

联合字段 task_attribute_value。属性的值,可以是字符串、布尔值或双精度类型。如果未设置,则 TaskAttribute string_value 将存储为空字符串 ""。task_attribute_value 只能是下列其中一项:
string_value

string

字符串类型的属性值。

bool_value

bool

布尔值类型的属性值。

number_value

double

双精度类型的属性值。

TaskTrackingInfo

TaskTrackingInfo 消息。此消息包含用于显示的任务跟踪信息。如果跟踪 ID 与多个任务相关联,Fleet Engine 会使用启发法来确定选择哪个任务的 TaskTrackingInfo。

字段
name

string

必须采用 providers/{provider}/taskTrackingInfo/{tracking} 格式,其中 tracking 表示跟踪 ID。

tracking_id

string

不可变。任务的跟踪 ID。* 必须是有效的 Unicode 字符串。* 长度上限为 64 个字符。* 根据 Unicode 标准化形式 C 进行了标准化处理。* 不得包含以下任何 ASCII 字符:“/”、“:”、“?”、“,”或“#”。

vehicle_location

DeliveryVehicleLocation

车辆的上一个位置。

route_polyline_points[]

LatLng

一系列点,连接时,这些点构成一条从车辆前往此任务所在位置的预期路线的多段线。

remaining_stop_count

Int32Value

指示在完成任务停止之前,车辆剩余的停靠次数,包括任务停止。例如,如果车辆的下一站是任务停止点,则此值将为 1。

remaining_driving_distance_meters

Int32Value

到相关 VehicleStop 的剩余总距离(以米为单位)。

estimated_arrival_time

Timestamp

表示到停靠位置的预计到达时间的时间戳。

estimated_task_completion_time

Timestamp

表示任务预计完成时间的时间戳。

state

State

Task 的当前执行状态。

task_outcome

TaskOutcome

尝试执行 Task 的结果。

task_outcome_time

Timestamp

指示提供程序设置 Task 结果的时间的时间戳。

planned_location

LocationInfo

不可变。完成任务的位置。

target_time_window

TimeWindow

应完成任务的时间范围。

attributes[]

TaskAttribute

在任务中设置的自定义属性。

TaskTrackingViewConfig

用于定义何时应向最终用户显示 Task 数据元素的配置消息。

字段
route_polyline_points_visibility

VisibilityOption

用于指定路线多段线点何时可显示的字段。如果未指定此字段,则将使用此数据的项目级默认可见性配置。

estimated_arrival_time_visibility

VisibilityOption

用于指定何时可显示预计到达时间的字段。如果未指定此字段,则将使用此数据的项目级默认可见性配置。

estimated_task_completion_time_visibility

VisibilityOption

用于指定何时可显示预计任务完成时间的字段。如果未指定此字段,则将使用此数据的项目级默认可见性配置。

remaining_driving_distance_visibility

VisibilityOption

用于指定剩余行车距离何时可见的字段。如果未指定此字段,则将使用此数据的项目级默认可见性配置。

remaining_stop_count_visibility

VisibilityOption

用于指定剩余停车点何时可见的字段。如果未指定此字段,则将使用此数据的项目级默认可见性配置。

vehicle_location_visibility

VisibilityOption

用于指定何时可显示车辆位置信息的字段。如果未指定此字段,则将使用此数据的项目级默认可见性配置。

VisibilityOption

用于定义何时应向最终用户显示数据元素的选项消息。

字段
联合字段 visibility_option。所选的特定公开范围选项。visibility_option 只能是下列其中一项:
remaining_stop_count_threshold

int32

如果剩余经停点数量 <= remaining_stop_count_threshold,则此数据元素对最终用户可见。

duration_until_estimated_arrival_time_threshold

Duration

如果相应经停点的预计到达时间 <= duration_until_estimated_arrival_time_threshold,则最终用户可以看到此数据元素。

remaining_driving_distance_meters_threshold

int32

如果剩余行车距离(以米为单位)<= remaining_driving_distance_meters_threshold,则此数据元素对最终用户可见。

always

bool

如果设置为 true,则此数据元素始终对最终用户可见,且没有阈值。此字段不能设为 false。

never

bool

如果设置为 true,系统会始终对最终用户隐藏此数据元素,并且未设置阈值。此字段不能设为 false。

TimeWindow

时间范围。

字段
start_time

Timestamp

必需。时间范围的开始时间(含此时间)。

end_time

Timestamp

必需。时间范围的结束时间(含此时间)。

UpdateDeliveryVehicleRequest

UpdateDeliveryVehicle 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

delivery_vehicle

DeliveryVehicle

必需。要应用的 DeliveryVehicle 实体更新。注意:您无法更新 DeliveryVehicle 的名称。

update_mask

FieldMask

必需。字段掩码,指示要更新的 DeliveryVehicle 字段。请注意,update_mask 必须包含至少一个字段。

这是以英文逗号分隔的完全限定字段名称列表。示例:"remaining_vehicle_journey_segments"

UpdateTaskRequest

UpdateTask 请求消息。

字段
header

DeliveryRequestHeader

可选。标准 Delivery API 请求标头。

task

Task

必需。与更新关联的任务。以下字段由 Fleet Engine 维护。请勿使用 Task.update 更新它们。

  • last_location.
  • last_location_snappable.
  • name.
  • remaining_vehicle_journey_segments.
  • task_outcome_location_source.

注意:task_outcome 的值一经设置便无法更改。

如果任务已分配给配送车辆,请勿使用 Task.update 将任务状态设置为“已关闭”。而应从送货车辆中移除包含相应任务的 VehicleStop,这会将任务状态自动设置为“已关闭”。

update_mask

FieldMask

必需。指示要更新的任务字段的字段掩码。注意:update_mask 必须至少包含一个字段。

这是以英文逗号分隔的完全限定字段名称列表。示例:"task_outcome,task_outcome_time,task_outcome_location"

VehicleJourneySegment

表示车辆的行程路段 - 从其上一个经停点到当前经停点。如果是第一个有效停靠站,则从车辆的当前位置到该停靠站。

字段
stop

VehicleStop

指定经停点位置以及与经停点关联的 Task。如果此行程片段属于 JourneySharingInfo,则 VehicleStop 的某些字段可能不存在。

driving_distance_meters

Int32Value

仅限输出。从上一站到此经停点的行程距离。如果当前停靠站是行程片段列表中的第一个停靠站,则起点是此停靠点添加到列表中时所记录的车辆位置。如果此历程片段属于“JourneySharingInfo”,则此字段可能不存在。

driving_duration

Duration

仅限输出。从上一站到此经停点的行程时间。如果当前停靠站是旅程路段列表中的第一个停靠站,则起点是将停靠点添加到列表中时记录的车辆位置。

如果此字段是在路径 Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) 或 Task.remainingVehicleJourneySegments[0].drivingDuration (REST) 中定义的,则可能使用 DeliveryVehicle.remaining_duration (gRPC) 或 DeliveryVehicle.remainingDuration (REST) 中的值进行填充。这样可提供从驾驶员应用的最新已知位置出发的剩余行驶时长,而不是从上一个停靠站开始的行驶时间。

path[]

LatLng

仅限输出。从上一站到此经停点的路径。如果当前停靠站是行程路段列表中的第一个停靠站,则这是将停靠点添加到列表中时从车辆当前位置到该停靠站的路径。如果此历程片段属于“JourneySharingInfo”,则此字段可能不存在。

如果此字段是在路径 Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) 或 Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST) 中定义的,则它可能会填充从 DeliveryVehicle.current_route_segment (gRPC) 或 DeliveryVehicle.currentRouteSegment (REST) 解码的 LatLng。这提供了从驾驶员应用的最新已知位置的驾车路线,而不是从上一个停靠站出发的路径。

VehicleStop

描述车辆停下来执行一个或多个 Task 的点。

字段
planned_location

LocationInfo

必需。经停点的位置。请注意,Task 中的位置可能与此位置不完全匹配,但与该位置相距较短。在 GetTaskSearchTasks 调用的响应中不会填充此字段。

tasks[]

TaskInfo

要在此经停点执行的 Task 的列表。在 GetTaskSearchTasks 调用的响应中不会填充此字段。

state

State

VehicleStop 的状态。在 GetTaskSearchTasks 调用的响应中不会填充此字段。

状态

VehicleStop 的当前状态。

枚举
STATE_UNSPECIFIED 未知。
NEW 已创建,但未主动进行转送。
ENROUTE 已分配且正在转送。
ARRIVED 已到达经停点。假设当车辆正在前往下一个停靠站时,之前的所有停靠站都已全部完成。

TaskInfo

关于在此经停点执行的任务的更多信息。

字段
task_id

string

任务 ID。在 GetTaskSearchTasks 调用的响应中不会填充此字段。任务 ID 受到以下限制:

  • 必须是有效的 Unicode 字符串。
  • 长度上限为 64 个字符。
  • 根据 Unicode 标准化形式 C 进行了标准化处理。
  • 不得包含以下任何 ASCII 字符:“/”、“:”、“?”、“,”或“#”。
task_duration

Duration

仅限输出。执行任务所需的时间。

target_time_window

TimeWindow

仅限输出。应完成任务的时间范围。此字段仅在对 GetDeliveryVehicle 的响应中设置。