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 中的這個欄位。

持續時間以秒為單位,最多 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