REST Resource: providers.deliveryVehicles

資源:貨運車輛

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 已過時,且指向先前的車輛停靠站。

在這些情況下,Fleet Engine 會在這個欄位填入最近傳遞的 車輛停靠站到即將到來的 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 中的這個欄位。

持續時間以秒為單位,最多 9 個小數位數,結尾為「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