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.remaining_vehicle_journey_segments[0].driving_distance_meters (gRPC) 或 Task.remainingVehicleJourneySegments[0].drivingDistanceMeters (REST) 中傳回這個欄位,適用於指派給發布媒介的所有有效 Task

如果 currentRouteSegment 欄位為空白,Fleet Engine 會忽略 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 中的這個欄位。

時間長度以秒為單位,最多可有 9 個小數位數,並應以「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。屬性的值可以是字串、布林值或雙精度值。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