Method: providers.vehicles.search

İstek seçenekleriyle eşleşen araçların listesini döndürür.

HTTP isteği

POST https://fleetengine.googleapis.com/v1/{parent=providers/*}/vehicles:search

URL, gRPC Kod Dönüştürme söz dizimini kullanır.

Yol parametreleri

Parametreler
parent

string

Zorunlu. providers/{provider} biçiminde olmalıdır. Sağlayıcı, bu çağrıyı yapan hizmet hesabının üyesi olduğu Google Cloud Projesinin proje kimliği (ör. sample-cloud-project) olmalıdır.

İstek içeriği

İsteğin gövdesi, aşağıdaki yapıya sahip veriler içerir:

JSON gösterimi
{
  "header": {
    object (RequestHeader)
  },
  "pickupPoint": {
    object (TerminalLocation)
  },
  "dropoffPoint": {
    object (TerminalLocation)
  },
  "pickupRadiusMeters": integer,
  "count": integer,
  "minimumCapacity": integer,
  "tripTypes": [
    enum (TripType)
  ],
  "maximumStaleness": string,
  "vehicleTypes": [
    {
      object (VehicleType)
    }
  ],
  "requiredAttributes": [
    {
      object (VehicleAttribute)
    }
  ],
  "requiredOneOfAttributes": [
    {
      object (VehicleAttributeList)
    }
  ],
  "requiredOneOfAttributeSets": [
    {
      object (VehicleAttributeList)
    }
  ],
  "orderBy": enum (VehicleMatchOrder),
  "includeBackToBack": boolean,
  "tripId": string,
  "currentTripsPresent": enum (CurrentTripsPresent),
  "filter": string
}
Alanlar
header

object (RequestHeader)

Standart Fleet Engine istek başlığı.

pickupPoint

object (TerminalLocation)

Zorunlu. Yakınında aranacak teslim noktası.

dropoffPoint

object (TerminalLocation)

Müşterinin istediği teslim yeri. tripTypes, TripType.SHARED içeriyorsa bu alan gereklidir.

pickupRadiusMeters

integer

Zorunlu. Teslim alma noktası etrafındaki araç arama yarıçapını tanımlar. Yalnızca arama yarıçapındaki araçlar döndürülür. Değer 400 ile 10.000 metre (dahil) arasında olmalıdır.

count

integer

Zorunlu. Döndürülecek maksimum araç sayısını belirtir. Değer 1 ile 50 (dahil) arasında olmalıdır.

minimumCapacity

integer

Zorunlu. Bir gezi için dikkate alınan yolcu sayısını belirtir. Değer 1'den büyük veya 1'e eşit olmalıdır. Sürücü, kapasite değerinde dikkate alınmaz.

tripTypes[]

enum (TripType)

Zorunlu. Önerilen gezi türünü gösterir. Tam olarak bir tür içermelidir. UNKNOWN_TRIP_TYPE politikasına izin verilmiyor. Aramayı yalnızca ilgili seyahat türünü destekleyen araçlarla kısıtlar.

maximumStaleness

string (Duration format)

Aramayı yalnızca belirtilen süre içinde Fleet Engine'e konum güncellemesi gönderen araçlarla kısıtlar. Konum bilgilerini iletmeye devam eden sabit araçlar eski olarak kabul edilmez. Bu alan ayarlanmazsa sunucu varsayılan değer olarak beş dakikayı kullanır.

"s" ile biten ve en fazla dokuz kesir basamağı olan, saniye cinsinden bir süre. Örnek: "3.5s".

vehicleTypes[]

object (VehicleType)

Zorunlu. Aramayı, belirtilen türlerden birine sahip araçlarla kısıtlar. En az bir araç türü belirtilmelidir. UNKNOWN kategorisindeki VehicleType'lara izin verilmez.

requiredAttributes[]

object (VehicleAttribute)

Arayanlar requiredAttributes, requiredOneOfAttributes ve requiredOneOfAttributeSets alanlarının herhangi bir kombinasyonunu kullanarak karmaşık mantıksal işlemler oluşturabilir.

requiredAttributes bir liste; requiredOneOfAttributes, listelere izin veren bir mesaj kullanır. Kombinasyonu, iki alan şu ifadenin birleştirilmesine olanak tanır:

(requiredAttributes[0] AND requiredAttributes[1] AND ...)
AND
(requiredOneOfAttributes[0][0] OR requiredOneOfAttributes[0][1] OR
...)
AND
(requiredOneOfAttributes[1][0] OR requiredOneOfAttributes[1][1] OR
...)

Aramayı yalnızca belirtilen özelliklere sahip araçlarla kısıtlar. Bu alan bir bağlaç/VE işlemidir. En fazla 50 requiredFeature'a izin verilir. Bu değer, bir araçta izin verilen maksimum özellik sayısıyla eşleşir.

requiredOneOfAttributes[]

object (VehicleAttributeList)

Aramayı yalnızca her VehicleAttributeList özelliğinde belirtilen özelliklerden en az birine sahip araçlarla kısıtlar. Her listede, araç özelliklerden en az biriyle eşleşmelidir. Bu alan, her VehicleAttributeList içindeki kapsayıcı bir ayırma/VEYA işlemidir ve VehicleAttributeList koleksiyonu genelindeki bir bağlaç/VE işlemidir.

requiredOneOfAttributeSets[]

object (VehicleAttributeList)

requiredOneOfAttributeSets ek işlevler sağlar.

requiredOneOfAttributes işlevine benzer şekilde requiredOneOfAttributeSets, aşağıdaki gibi ifadelere izin veren bir liste listesi kullanır:

(requiredAttributes[0] AND requiredAttributes[1] AND ...)
AND
(
  (requiredOneOfAttributeSets[0][0] AND
  requiredOneOfAttributeSets[0][1] AND
  ...)
  OR
  (requiredOneOfAttributeSets[1][0] AND
  requiredOneOfAttributeSets[1][1] AND
  ...)
)

Aramayı yalnızca VehicleAttributeList içindeki tüm özelliklere sahip araçlarla kısıtlar. Her listede, bir araç tüm özelliklerle eşleşmelidir. Bu alan, VehicleAttributeList koleksiyonundaki her bir VehicleAttributeList için bir bağlaç/VE işlemi ve kapsayıcı ayırma/VEYA işlemidir.

orderBy

enum (VehicleMatchOrder)

Zorunlu. Sonuçlar için istenen sıralama kriterini belirtir.

includeBackToBack

boolean

Bu, tek bir aktif seyahati olan araçların bu arama için uygun olup olmadığını gösterir. Bu alan yalnızca currentTripsPresent belirtilmediğinde kullanılır. currentTripsPresent belirtilmezse ve bu alan false olarak belirlenmişse, gezi atanmış araçlar arama sonuçlarından hariç tutulur. currentTripsPresent belirtilmemişse ve bu alan true olarak belirlenmişse arama sonuçları, durumu ENROUTE_TO_DROPOFF olan aktif bir geziye sahip araçları içerebilir. currentTripsPresent belirtildiğinde, bu alan doğru olarak ayarlanamaz.

Varsayılan değer: false.

tripId

string

Bu SearchVehicleRequest ile ilişkilendirilmiş geziyi gösterir.

currentTripsPresent

enum (CurrentTripsPresent)

Bu sütun, aktif seyahatleri olan araçların bu arama için uygun olup olmadığını gösterir. tripType, SHARED içeriyorsa bu, CURRENT_TRIPS_PRESENT_UNSPECIFIED dışında bir değere ayarlanmalıdır.

filter

string

İsteğe bağlı. Araç ararken uygulanacak bir filtre sorgusu. Filtre söz dizimi örnekleri için http://aip.dev/160 sayfasına göz atın.

Bu alan requiredAttributes, requiredOneOfAttributes ve required_one_of_attributes_sets alanlarının yerini alacak şekilde tasarlanmıştır. Burada boş olmayan bir değer belirtilmişse şu alanlar boş olmalıdır: requiredAttributes, requiredOneOfAttributes ve required_one_of_attributes_sets.

Bu filtre, minimumCapacity veya vehicleTypes gibi başka kısıtlamalarla birlikte bir AND ifadesi olarak çalışır.

Yalnızca araç özellikleri (örneğin, attributes.<key> = <value> veya attributes.<key1> = <value1> AND attributes.<key2> = <value2>) üzerinde sorgu desteklenir. Bir filtre sorgusunda izin verilen maksimum kısıtlama sayısı 50'dir.

Ayrıca, tüm özellikler dize olarak depolanır. Bu nedenle, özelliklere karşı yalnızca dize karşılaştırmaları desteklenir. Sayı veya boole değerleriyle karşılaştırma yapmak için değerlerin dize olarak ele alınmaları için açık bir şekilde tırnak içine alınması gerekir (örneğin, attributes.<key> = "10" veya attributes.<key> = "true").

Yanıt gövdesi

vehicles.search yanıt mesajı.

Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:

JSON gösterimi
{
  "matches": [
    {
      object (VehicleMatch)
    }
  ]
}
Alanlar
matches[]

object (VehicleMatch)

SearchVehiclesRequest ölçütleriyle eşleşen araçların, SearchVehiclesRequest.order_by alanına göre sıralanmış listesi.

VehicleAttributeList

Araç özellikleri için liste veri türü.

JSON gösterimi
{
  "attributes": [
    {
      object (VehicleAttribute)
    }
  ]
}
Alanlar
attributes[]

object (VehicleAttribute)

Bu koleksiyondaki özelliklerin listesi.

VehicleMatchOrder

Aracın yanıttaki eşleşme sırasını belirtir.

Sıralamalar
UNKNOWN_VEHICLE_MATCH_ORDER Varsayılan değer, belirtilmeyen veya tanınmayan araç eşleşme sırası için kullanılır.
PICKUP_POINT_ETA Aracın teslim alma noktasına kadar sürme süresine göre artan düzen.
PICKUP_POINT_DISTANCE Aracın teslim alma noktasına olan sürüş mesafesine göre artan düzen.
DROPOFF_POINT_ETA Teslim etme noktasına kadar araç sürüş süresine göre artan düzen. Bu sipariş yalnızca istekte bırakma noktası belirtilmişse kullanılabilir.
PICKUP_POINT_STRAIGHT_DISTANCE Aracın bildirilen son konumundan teslim alma noktasına kadar düz çizgi mesafesine göre artan düzen.
COST Yapılandırılmış eşleşme maliyetine göre artan sıra. Eşleşme maliyeti, düz çizgi mesafesi ile TVS arasında ağırlıklı hesaplama olarak tanımlanır. Ağırlıklar, varsayılan değerlerle ayarlanır ve müşteri bazında değiştirilebilir. Projeniz için bu ağırlıkların değiştirilmesi gerekiyorsa lütfen Google destek ekibiyle iletişime geçin.

CurrentTripsPresent

Bir aracın şu anki yolculuklarıyla ilgili kısıtlama türlerini belirtir.

Sıralamalar
CURRENT_TRIPS_PRESENT_UNSPECIFIED Seyahat bilgileri olan araçların müsaitlik durumu includeBackToBack alanına bağlıdır.
NONE Yolculuk içermeyen araçlar arama sonuçlarında görünebilir. Bu değer kullanıldığında includeBackToBack, true olamaz.
ANY En fazla 5 güncel gidiş ve 10 ara nokta bulunan araçlar arama sonuçlarına dahil edilir. Bu değer kullanıldığında includeBackToBack, true olamaz.

VehicleMatch

SearchVehiclesRequest aracı için aktif yolculukların puanlarıyla eşleşen araç ve araçla ilgili tahminleri içerir.

JSON gösterimi
{
  "vehicle": {
    object (Vehicle)
  },
  "vehiclePickupEta": string,
  "vehiclePickupDistanceMeters": integer,
  "vehiclePickupStraightLineDistanceMeters": integer,
  "vehicleDropoffEta": string,
  "vehiclePickupToDropoffDistanceMeters": integer,
  "tripType": enum (TripType),
  "vehicleTripsWaypoints": [
    {
      object (Waypoint)
    }
  ],
  "vehicleMatchType": enum (VehicleMatchType),
  "requestedOrderedBy": enum (VehicleMatchOrder),
  "orderedBy": enum (VehicleMatchOrder)
}
Alanlar
vehicle

object (Vehicle)

Zorunlu. İstekle eşleşen bir araç.

vehiclePickupEta

string (Timestamp format)

İstekte belirtilen teslim alma noktasına aracın sürüş TVS'si. Boş değer olması, araç için TVS'nin hesaplanmasında bir hata olduğunu gösterir. SearchVehiclesRequest.include_back_to_back değeri true ise ve bu aracın aktif bir yolculuğu varsa vehiclePickupEta mevcut aktif yolculuğu tamamlamak için gereken süreyi içerir.

Nanosaniye çözünürlük ve en fazla dokuz kesir basamağı olan, RFC3339 UTC "Zulu" biçiminde bir zaman damgası. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

vehiclePickupDistanceMeters

integer

Mevcut seyahatler için ara teslim alma veya bırakma noktaları dahil olmak üzere, aracın mevcut konumundan istekte belirtilen teslim alma noktasına olan mesafe. Bu mesafe, hesaplanan sürüş (rota) mesafesinin yanı sıra navigasyon bitiş noktası ile istenen başlangıç noktası arasındaki düz çizgi mesafesini içerir. (Navigasyon bitiş noktası ile istenen teslim noktası arasındaki mesafe genellikle çok azdır.) Boş değer, mesafe hesaplamasında bir hata olduğunu gösterir.

vehiclePickupStraightLineDistanceMeters

integer

Zorunlu. Araç ile istekte belirtilen teslim alma noktası arasındaki düz çizgi mesafesi.

vehicleDropoffEta

string (Timestamp format)

İstekte belirtilen teslim noktasına kadar aracın sürüş TVS'sinin tamamı. Tahmini varış süresi, istekte belirtilen dropoffPoint öncesinde herhangi bir ara noktada durmayı içerir. Değer yalnızca istekte bir bırakma noktası belirtildiğinde doldurulur. Boş değer, TVS hesaplanırken bir hata olduğunu gösterir.

Nanosaniye çözünürlük ve en fazla dokuz kesir basamağı olan, RFC3339 UTC "Zulu" biçiminde bir zaman damgası. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

vehiclePickupToDropoffDistanceMeters

integer

Aracın, başlangıç noktasından istekte belirtilen teslim noktasına olan sürüş mesafesi (metre cinsinden). Mesafe yalnızca iki nokta arasındadır ve aracın konumunu veya araç, başlangıç ya da bırakma noktasını ziyaret etmeden önce ziyaret edilmesi gereken diğer noktaları içermez. Değer yalnızca istekte bir dropoffPoint belirtildiğinde doldurulur. Boş değer, istekte belirtilen teslim alma ile teslim etme noktası arasındaki mesafenin hesaplanmasında bir hata olduğunu gösterir.

tripType

enum (TripType)

Zorunlu. Teslim alma noktasına TVS'yi hesaplamak için kullanılan isteğin gezi türü.

vehicleTripsWaypoints[]

object (Waypoint)

TVS'yi hesaplamak için kullanılan ara noktaların sıralı listesi. Listede aracın konumu, araç için etkin yolculukların teslim alma noktaları ve istekte belirtilen teslim alma noktaları bulunur. Boş liste, araç için TVS'nin hesaplanmasında bir hata olduğunu gösterir.

vehicleMatchType

enum (VehicleMatchType)

Aracın türü eşleşiyor.

requestedOrderedBy

enum (VehicleMatchOrder)

Araç eşleşmelerini sıralamak için istenen sipariş.

orderedBy

enum (VehicleMatchOrder)

Bu araç için kullanılan gerçek sipariş. Normalde bu, istekteki "orderBy" alanıyla eşleşir; ancak, dahili sunucu hatası gibi belirli durumlarda farklı bir yöntem kullanılabilir (PICKUP_POINT_STRAIGHT_DISTANCE gibi).

Ara nokta

SearchVehiclesResponse içinde VehicleMatch için bir rota üzerindeki ara noktaları tanımlar. Bu kavram, diğer tüm uç noktalarda bir TripWaypoint olarak temsil edilir.

JSON gösterimi
{
  "latLng": {
    object (LatLng)
  },
  "eta": string
}
Alanlar
latLng

object (LatLng)

Bu ara noktanın konumu.

eta

string (Timestamp format)

Aracın bu ara noktaya varacağı tahmini süre.

Nanosaniye çözünürlük ve en fazla dokuz kesir basamağı olan, RFC3339 UTC "Zulu" biçiminde bir zaman damgası. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

VehicleMatchType

Araç türü eşleşmesi.

Sıralamalar
UNKNOWN Bilinmeyen araç eşleme türü
EXCLUSIVE Şu anda araç için atanmış gezi yok ve teslim alma noktasına devam edebilir.
BACK_TO_BACK Araç şu anda bir geziye atanmış durumda ancak devam eden gezi tamamlandıktan sonra kalkış noktasına devam edebilir. Tahmini varış süresi ve mesafe hesaplamalarında mevcut gezi hesaba katılır.
CARPOOL Araç ortak yolculuk için yeterli kapasiteye sahipse.
CARPOOL_BACK_TO_BACK Araç, başlangıç noktasına gitmeden önce mevcut aktif yolculuğunu bitirir. Tahmini varış süresi ve mesafe hesaplamalarında mevcut gezi hesaba katılır.