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)

编码多段线,用于指定导航建议前往下一个航点的路线。您的驾驶员应用会在到达经停点或经过以及导航更改路线时更新此信息。对于分配给车辆的所有活跃任务,这些 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):

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

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

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

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

使用 base64 编码的字符串。

currentRouteSegmentEndPoint

object (LatLng)

currentRouteSegment 的结束位置。驱动程序应用目前不会填充此字段,但您可以在 deliveryVehicles.patch 调用中提供它。此时间要么是到即将到来的车辆停靠站的 LatLng,要么是 currentRouteSegment 中的最后一个 LatLng。然后,Fleet Engine 会尽力插值到实际的 VehicleStop

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

remainingDistanceMeters

integer

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

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

remainingDuration

string (Duration format)

currentRouteSegment的剩余行驶时间。Driver 应用通常会提供此字段,但在某些情况下,Fleet Engine 会覆盖应用发送的值。如需了解详情,请参阅 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 Driver 应用的导航处于 FREE_NAV 模式。
ENROUTE_TO_DESTINATION 可以使用精细导航功能,司机应用导航功能已进入GUIDED_NAV模式。
OFF_ROUTE 车辆偏离了建议的路线。
ARRIVED_AT_DESTINATION 车辆离目的地大约 50 米。

DeliveryVehicleAttribute

将车辆属性描述为键值对。“key:value”字符串长度不能超过 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。该属性的值可以是字符串、bool 或双精度类型。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