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的剩余行车距离。驱动程序应用通常会提供此字段,但在某些情况下,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的剩余行车时间。驱动程序应用通常会提供此字段,但在某些情况下,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 驾驶应用的导航处于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。属性的值,可以是字符串、布尔值或双精度类型。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