REST Resource: providers.vehicles

資源:交通工具

車輛中繼資料。

JSON 表示法
{
  "name": string,
  "vehicleState": enum (VehicleState),
  "supportedTripTypes": [
    enum (TripType)
  ],
  "currentTrips": [
    string
  ],
  "lastLocation": {
    object (VehicleLocation)
  },
  "maximumCapacity": integer,
  "attributes": [
    {
      object (VehicleAttribute)
    }
  ],
  "vehicleType": {
    object (VehicleType)
  },
  "licensePlate": {
    object (LicensePlate)
  },
  "route": [
    {
      object (TerminalLocation)
    }
  ],
  "currentRouteSegment": string,
  "currentRouteSegmentTraffic": {
    object (TrafficPolylineData)
  },
  "currentRouteSegmentVersion": string,
  "currentRouteSegmentEndPoint": {
    object (TripWaypoint)
  },
  "remainingDistanceMeters": integer,
  "etaToFirstWaypoint": string,
  "remainingTimeSeconds": integer,
  "waypoints": [
    {
      object (TripWaypoint)
    }
  ],
  "waypointsVersion": string,
  "backToBackEnabled": boolean,
  "navigationStatus": enum (NavigationStatus),
  "deviceSettings": {
    object (DeviceSettings)
  }
}
欄位
name

string

僅供輸出。這輛車的專屬名稱。格式為 providers/{provider}/vehicles/{vehicle}

vehicleState

enum (VehicleState)

交通工具狀態。

supportedTripTypes[]

enum (TripType)

這輛車支援的行程類型。

currentTrips[]

string

僅供輸出。目前指派給這輛車的tripId行程清單。

lastLocation

object (VehicleLocation)

車輛上次回報的位置。

maximumCapacity

integer

這輛車可載的乘客總數。這個值不考慮驅動程式。這個值必須大於或等於 1。

attributes[]

object (VehicleAttribute)

車輛屬性清單。車輛最多能有 100 個屬性,而且每個屬性都必須有專屬索引鍵。

vehicleType

object (VehicleType)

必要欄位。這輛車的類型。可用於篩選「vehicles.search」結果中的車輛。也會影響預計到達時間和路線的計算。

licensePlate

object (LicensePlate)

車輛的車牌資訊。

route[]
(deprecated)

object (TerminalLocation)

已淘汰:請改用 Vehicle.waypoints

currentRouteSegment

string

指定駕駛應用程式前往下一個路線控點的路線的折線。針對指派給車輛的所有有效行程,這份清單也會在 Trip.current_route_segment 中傳回。

注意:這個欄位僅供 Driver SDK 使用。目前不支援解碼。

currentRouteSegmentTraffic

object (TrafficPolylineData)

僅限輸入。Fleet Engine 會使用這項資訊改善旅程分享體驗。注意:這個欄位僅供 Driver SDK 使用。

currentRouteSegmentVersion

string (Timestamp format)

僅供輸出。currentRouteSegment 的時間。用戶端可以儲存這個位址,並在日後的 vehicles.get 要求中傳遞,以免傳回未變更的路徑。

RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

currentRouteSegmentEndPoint

object (TripWaypoint)

currentRouteSegment結束的路線點。這可以由 vehicles.update 呼叫的駕駛提供,做為完整行程路線控點、路線控點 LatLng,或是 currentRouteSegment 的最後一個 LatLng。然後,如果未指定完整的路線控點,Fleet Engine 就會盡可能將其插入至實際路線控點。除非一併指定 currentRouteSegment,否則 vehicles.update 呼叫會忽略此欄位。

remainingDistanceMeters

integer

currentRouteSegment 的剩餘行車距離。針對指派給車輛的所有有效行程,系統也會在 Trip.remaining_distance_meters 中傳回這個值。如果 currentRouteSegment 欄位空白,則不會指定值。

etaToFirstWaypoint

string (Timestamp format)

預計到達 waypoints 欄位中第一個項目的預計到達時間。如果 waypoints 欄位空白或 Vehicle.current_route_segment 欄位空白,則不會指定值。

更新車輛時,remainingTimeSeconds 的優先順序高於同一個要求中的 etaToFirstWaypoint

RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

remainingTimeSeconds

integer

僅限輸入。currentRouteSegment 的剩餘行車時間。如果 waypoints 欄位空白或 Vehicle.current_route_segment 欄位空白,則不會指定值。如果各方都使用相同時鐘,這個值應與 etaToFirstWaypointcurrent_time 相符。

更新車輛時,remainingTimeSeconds 的優先順序高於同一個要求中的 etaToFirstWaypoint

waypoints[]

object (TripWaypoint)

指派給這輛車的其餘路線控點。

waypointsVersion

string (Timestamp format)

僅供輸出。上次更新 waypoints 欄位的時間。用戶端應快取這個值並傳入 GetVehicleRequest,確保 waypoints 欄位只有在更新時才會傳回。

RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

backToBackEnabled

boolean

指出司機是否接受連續行程。如果設為 truevehicles.search 可能會納入該車輛,即使目前已指派特定行程也一樣。預設值為 false

navigationStatus

enum (NavigationStatus)

車輛的導航狀態。

deviceSettings

object (DeviceSettings)

僅限輸入。駕駛所用行動裝置的設定資訊。

VehicleState

Vehicle 的狀態。

列舉
UNKNOWN_VEHICLE_STATE 預設值,用於未指定或無法辨識的車輛狀態。
OFFLINE 車輛不接受新行程,注意:車輛在完成指派的行程時,可能會繼續以這個狀態運作。
ONLINE 車輛正在接受新行程,

VehicleAttribute

將車輛屬性描述為鍵/值組合。「key:value」字串的長度不得超過 256 個半形字元。

JSON 表示法
{
  "key": string,
  "value": string,

  // Union field 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 vehicle_attribute_value.
}
欄位
key

string

屬性的鍵。鍵不得包含冒號字元 (:)。

value

string

屬性的值。

聯集欄位 vehicle_attribute_value。屬性值可以是字串、布林值或雙精度浮點數類型。vehicle_attribute_value 只能是下列其中一項:
stringValue

string

字串類型的屬性值。

注意:這與最終會淘汰的 value 欄位相同。針對建立或更新方法,這兩個欄位皆可使用,但強烈建議使用 stringValue。如果同時設定了 stringValuevalue,兩者必須相同,否則系統將擲回錯誤。這兩個欄位都會填入回應。

boolValue

boolean

布林值的輸入屬性值。

numberValue

number

雙重輸入屬性值。

VehicleType

車輛類型,

JSON 表示法
{
  "category": enum (Category)
}
欄位
category

enum (Category)

車輛類型類別

類別

車輛類型類別

列舉
UNKNOWN 預設:用於未指定或無法辨識的車輛類別。
AUTO 汽車。
TAXI 任何一輛計程車 (通常經過執照或管制) 的車輛。
TRUCK 一般來說,儲存容量較大的車輛。
TWO_WHEELER 摩托車、機車或其他雙輪車
BICYCLE 透過人機運輸。
PEDESTRIAN 運輸公司,通常是步行或跑步,並沿著人行道行駛。

LicensePlate

車輛的車牌資訊。為了避免儲存個人識別資訊,實體只會儲存與車牌有關的最低資訊。

JSON 表示法
{
  "countryCode": string,
  "lastCharacter": string
}
欄位
countryCode

string

必要欄位。CLDR 國家/地區代碼。例如:美國為 US,印度則使用 IN

lastCharacter

string

車牌的最後一個數字或「-1」表示車牌上沒有數字值。

  • 「ABC 1234」->「4」
  • 「AB 123 CD」->「3」
  • 「ABCDEF」->「-1」

TrafficPolylineData

預期車輛路線的路況。

JSON 表示法
{
  "trafficRendering": {
    object (VisualTrafficReportPolylineRendering)
  }
}
欄位
trafficRendering

object (VisualTrafficReportPolylineRendering)

以折線方式呈現所有區域在一段客戶行程中的車速。

VisualTrafficReportPolylineRendering

說明用戶端如何沿路線折線的某一部分上色。

JSON 表示法
{
  "roadStretch": [
    {
      object (RoadStretch)
    }
  ]
}
欄位
roadStretch[]

object (RoadStretch)

選用設定。應沿著折線算繪的道路延伸。我們保證不會重疊,且不一定會橫跨完整路線。

如果沒有要進行樣式的道路延伸,用戶端應套用路線預設值。

RoadStretch

應該呈現的一條道路延展。

JSON 表示法
{
  "style": enum (Style),
  "offsetMeters": integer,
  "lengthMeters": integer
}
欄位
style

enum (Style)

必要欄位。要套用的樣式。

offsetMeters

integer

必要欄位。樣式應在 [offsetMeters, offsetMeters + lengthMeters) 之間套用。

lengthMeters

integer

必要欄位。套用樣式的路徑長度。

樣式

流量樣式,代表流量速度。

列舉
STYLE_UNSPECIFIED 未選取任何樣式。
SLOWER_TRAFFIC 流量正在變慢。
TRAFFIC_JAM 遇見交通壅塞。

DeviceSettings

行動裝置上各種設定的相關資訊。

JSON 表示法
{
  "locationPowerSaveMode": enum (LocationPowerSaveMode),
  "isPowerSaveMode": boolean,
  "isInteractive": boolean,
  "batteryInfo": {
    object (BatteryInfo)
  }
}
欄位
locationPowerSaveMode

enum (LocationPowerSaveMode)

省電模式開啟時,位置資訊設定在裝置上的運作方式。

isPowerSaveMode

boolean

裝置目前是否處於省電模式。

isInteractive

boolean

裝置是否處於互動狀態。

batteryInfo

object (BatteryInfo)

電池狀態的相關資訊。

LocationPowerSaveMode

裝置「省電模式」功能開啟時,位置資訊設定如何在行動裝置上運作。(https://developer.android.com/reference/android/os/PowerManager#getLocationPowerSaveMode())

列舉
UNKNOWN_LOCATION_POWER_SAVE_MODE 未定義 LocationPowerSaveMode
LOCATION_MODE_NO_CHANGE 不是受到省電模式影響,或者就是省電模式已關閉的定位服務供應商。
LOCATION_MODE_GPS_DISABLED_WHEN_SCREEN_OFF 如果省電模式已開啟,且裝置無法互動,則應停用 GPS 定位提供者。
LOCATION_MODE_ALL_DISABLED_WHEN_SCREEN_OFF 如果省電模式已開啟,且裝置沒有互動情形,則應停用所有位置提供者。
LOCATION_MODE_FOREGROUND_ONLY 系統仍會保留所有位置資訊提供者,但應只將位置修正程式提供給前景應用程式。
LOCATION_MODE_THROTTLE_REQUESTS_WHEN_SCREEN_OFF 定位功能不會關閉,但當裝置沒有互動情形時,LocationManager 會限制向提供者發出的所有要求。

BatteryInfo

裝置電池的相關資訊。

JSON 表示法
{
  "batteryStatus": enum (BatteryStatus),
  "powerSource": enum (PowerSource),
  "batteryPercentage": number
}
欄位
batteryStatus

enum (BatteryStatus)

電池狀態,例如已充滿電或正在充電等。

powerSource

enum (PowerSource)

電池電源的狀態。

batteryPercentage

number

目前的電量百分比 [0-100]。

BatteryStatus

電池狀態,例如已充滿電或正在充電等。

列舉
UNKNOWN_BATTERY_STATUS 電池狀態不明。
BATTERY_STATUS_CHARGING 電池正在充電。
BATTERY_STATUS_DISCHARGING 電池正在放電。
BATTERY_STATUS_FULL 電池已充飽。
BATTERY_STATUS_NOT_CHARGING 電池未充電。
BATTERY_STATUS_POWER_LOW 電力不足,

PowerSource

用來為電池充電的充電器類型。

列舉
UNKNOWN_POWER_SOURCE 電源不明。
POWER_SOURCE_AC 電源是一種 AC 充電器。
POWER_SOURCE_USB 電源為 USB 連接埠。
POWER_SOURCE_WIRELESS 電源為無線訊號。
POWER_SOURCE_UNPLUGGED 未接上電池。

方法

create

將與隨選共乘/外送服務供應商相關聯的新車輛例項化。

get

從 Fleet Engine 傳回車輛。

list

傳回與要求選項相符的供應商相關聯的分頁清單。
傳回符合要求選項的車輛清單。

searchFuzzed
(deprecated)

已淘汰:請改用 SearchVehicles

update

將更新過的車輛資料寫入 Fleet Engine。

updateAttributes

部分更新車輛的屬性。

updateLocation
(deprecated)

已淘汰:請改用 UpdateVehicle 方法。