REST Resource: providers.deliveryVehicles

资源:DeliveryVehicle

DeliveryVehicle 消息。配送车辆将运输包裹从仓库运送到配送地点,以及从取件地点运送到仓库。在某些情况下,配送车辆还会直接将包裹从取件地点运送到送货地点。

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

JSON 表示法
{
  "name": string,
  "lastLocation": {
    object (DeliveryVehicleLocation)
  },
  "navigationStatus": enum (DeliveryVehicleNavigationStatus),
  "currentRouteSegment": string,
  "currentRouteSegmentEndPoint": {
    object (LatLng)
  },
  "remainingDistanceMeters": integer,
  "remainingDuration": string,
  "remainingVehicleJourneySegments": [
    {
      object (VehicleJourneySegment)
    }
  ],
  "attributes": [
    {
      object (DeliveryVehicleAttribute)
    }
  ],
  "type": enum (DeliveryVehicleType)
}
字段
name

string

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

lastLocation

object (DeliveryVehicleLocation)

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

navigationStatus

enum (DeliveryVehicleNavigationStatus)

配送车辆的导航状态。

currentRouteSegment

string (bytes format)

编码后的多段线,用于指定导航系统建议前往下一个航路点的路线。当到达或经过某个经停点以及导航重新路线时,驾驶员应用会更新此值。对于分配给车辆的所有有效任务,系统会以 Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) 或 Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST) 的形式返回这些 LatLng

在某些情况下,此字段可能无法用于填充 Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) 或 Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST):

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

  • 驾驶员应用最近未更新其位置信息,因此此字段的上次更新值可能已过时。

  • 驾驶员应用最近更新了其位置,但 currentRouteSegment 已过时,并指向之前的车辆停止点。

在这些情况下,车队引擎会在此字段中填充从最近经过的 VehicleStop 到即将到达的 VehicleStop 的路线,以确保此字段的使用方拥有有关配送车辆当前路线的最佳可用信息。

使用 base64 编码的字符串。

currentRouteSegmentEndPoint

object (LatLng)

currentRouteSegment 结束的位置。此字段目前未由驱动程序应用填充,但您可以在 deliveryVehicles.patch 调用中提供此字段。它是相应车站的 LatLng,或 currentRouteSegment 的最后一个 LatLng。然后,Fleet Engine 会尽力插值到实际的 VehicleStop

如果 currentRouteSegment 字段为空,则 deliveryVehicles.patch 调用会忽略此字段。

remainingDistanceMeters

integer

currentRouteSegment 的剩余行驶距离。驾驶员应用通常会提供此字段,但在某些情况下,车队引擎会替换应用发送的值。如需了解详情,请参阅 DeliveryVehicle.current_route_segment。对于分配给传送车辆的所有有效 Task,系统都会在 Task.remaining_vehicle_journey_segments[0].driving_distance_meters (gRPC) 或 Task.remainingVehicleJourneySegments[0].drivingDistanceMeters (REST) 中返回此字段。

如果 currentRouteSegment 字段为空,车队引擎会忽略 UpdateDeliveryVehicleRequest 中的此字段。

remainingDuration

string (Duration format)

currentRouteSegment的剩余行驶时间。驾驶员应用通常会提供此字段,但在某些情况下,车队引擎会替换应用发送的值。如需了解详情,请参阅 DeliveryVehicle.current_route_segment。对于分配给传送车辆的所有有效任务,系统会在 Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) 或 Task.remainingVehicleJourneySegments[0].drivingDuration (REST) 中返回此字段。

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

该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"

remainingVehicleJourneySegments[]

object (VehicleJourneySegment)

分配给此交付车辆的行程细分,以车辆最近报告的位置为起点。系统不会在 deliveryVehicles.list 的响应中填充此字段。

attributes[]

object (DeliveryVehicleAttribute)

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

type

enum (DeliveryVehicleType)

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

DeliveryVehicleNavigationStatus

车辆的导航状态。

枚举
UNKNOWN_NAVIGATION_STATUS 未指定导航状态。
NO_GUIDANCE 驾驶者应用的导航处于 FREE_NAV 模式。
ENROUTE_TO_DESTINATION 精细导航功能可用,并且“驾驶员”应用导航已进入 GUIDED_NAV 模式。
OFF_ROUTE 车辆偏离了建议的路线。
ARRIVED_AT_DESTINATION 车辆距离目的地约 50 米。

DeliveryVehicleAttribute

将车辆属性描述为键值对。“键值对”字符串的长度不得超过 256 个字符。

JSON 表示法
{
  "key": string,
  "value": string,

  // Union field delivery_vehicle_attribute_value can be only one of the
  // following:
  "stringValue": string,
  "boolValue": boolean,
  "numberValue": number
  // End of list of possible types for union field
  // delivery_vehicle_attribute_value.
}
字段
key

string

属性的键。

value

string

属性的值。

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

string

字符串类型的属性值。

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

boolValue

boolean

布尔类型的属性值。

numberValue

number

双精度属性值。

DeliveryVehicleType

配送车辆的类型。

枚举
DELIVERY_VEHICLE_TYPE_UNSPECIFIED 该值未使用。
AUTO 汽车。
TWO_WHEELER 摩托车、助力车或其他两轮车
BICYCLE 人力车辆。
PEDESTRIAN 人体运输工具,通常是沿着步道行走或跑步。

方法

create

创建并返回新的 DeliveryVehicle

get

返回指定的 DeliveryVehicle 实例。

list

获取符合指定过滤条件的所有 DeliveryVehicle

patch

将更新后的 DeliveryVehicle 数据写入 Fleet Engine,并将 Tasks 分配给 DeliveryVehicle