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 (örneğin, sample-cloud-project) olmalıdır.

İstek içeriği

İstek metni aşağıdaki yapıyla birlikte verileri 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 arama yapılacak teslim noktası.

dropoffPoint

object (TerminalLocation)

Müşterinin teslimat için tercih ettiği konum. tripTypes, TripType.SHARED içeriyorsa alan zorunludur.

pickupRadiusMeters

integer

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

count

integer

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

minimumCapacity

integer

Zorunlu. Seyahat için değerlendirilen yolcu sayısını belirtir. Değer birden büyük veya bire eşit olmalıdır. Sürücü, kapasite değerinde dikkate alınmaz.

tripTypes[]

enum (TripType)

Zorunlu. Önerilen seyahatin türünü temsil eder. Tam olarak bir tür içermelidir. UNKNOWN_TRIP_TYPE politikasına izin verilmiyor. Aramayı yalnızca söz konusu gezi türünü destekleyebilen araçlarla kısıtlar.

maximumStaleness

string (Duration format)

Aramayı yalnızca belirtilen süre içinde Fleet Engine'a konum güncellemesi gönderen araçlarla sınırlandırır. Hareketsiz olan ancak konumlarını hâlâ gönderen araçlar eski kabul edilmez. Bu alan ayarlanmazsa sunucu, varsayılan değer olarak beş dakikayı kullanır.

En fazla dokuz kesirli basamak içeren ve "s" ile biten, saniye cinsinden süre. Örnek: "3.5s".

vehicleTypes[]

object (VehicleType)

Zorunlu. Aramayı, belirtilen türlerden birine sahip araçlarla sınırlar. En az bir araç türü belirtilmelidir. UNKNOWN kategorisine sahip VehicleTypes öğelerine 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 listetir; requiredOneOfAttributes, liste listesine izin veren bir mesaj kullanır. Bu iki alan birlikte kullanıldığında aşağıdaki ifadenin oluşturulmasına 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 birleşim/VE işlemidir. En fazla 50 requiredattribute özelliğine izin verilir. Bu sayı, bir araçta izin verilen maksimum özellik sayısıyla eşleşir.

requiredOneOfAttributes[]

object (VehicleAttributeList)

Aramayı yalnızca her VehicleAttributeList'te belirtilen özelliklerden en az birine sahip araçlarla sınırlandırır. Her listede, aracın özelliklerden en az biriyle eşleşmesi gerekir. Bu alan, her VehicleAttributeList içindeki kapsayıcı bir ayırma/VEYA işlemi ve VehicleAttributeList koleksiyonundaki bir bağlantı/VE işlemidir.

requiredOneOfAttributeSets[]

object (VehicleAttributeList)

requiredOneOfAttributeSets ek işlevler sağlar.

requiredOneOfAttributes'e benzer şekilde requiredOneOfAttributeSets, liste listesine izin veren bir mesaj kullanır ve aşağıdaki gibi ifadelere izin verir:

(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çinde tüm özelliklere sahip araçlarla sınırlandırır. Her listede bir aracın tüm özelliklerle eşleşmesi gerekir. Bu alan, her VehicleAttributeList öğesinde bir birleşim/VE işlemi ve VehicleAttributeList koleksiyonunda kapsayıcı bir ayrım/VEYA işlemidir.

orderBy

enum (VehicleMatchOrder)

Zorunlu. Sonuçlar için istenen sıralama ölçütünü belirtir.

includeBackToBack

boolean

Bu özellik, tek bir etkin yolculuğu olan araçların bu arama için uygun olup olmadığını gösterir. Bu alan yalnızca currentTripsPresent belirtilmediyse kullanılır. currentTripsPresent belirtilmemişse ve bu alan false ise atanmış seyahatleri olan araçlar arama sonuçlarından hariç tutulur. currentTripsPresent belirtilmemişse ve bu alan true olduğunda arama sonuçları, ENROUTE_TO_DROPOFF durumundaki bir etkin yolculuğu olan araçları içerebilir. currentTripsPresent belirtildiğinde bu alan doğru olarak ayarlanamaz.

Varsayılan değer: false.

tripId

string

Bu SearchVehicleRequest ile ilişkili seyahati gösterir.

currentTripsPresent

enum (CurrentTripsPresent)

Bu sütun, etkin gezileri olan araçların bu arama için uygun olup olmadığını gösterir. tripType, SHARED içeriyorsa bu değer 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 adresine bakı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 belirtilirse şu alanlar boş olmalıdır: requiredAttributes, requiredOneOfAttributes ve required_one_of_attributes_sets.

Bu filtre, minimumCapacity veya vehicleTypes gibi diğer kısıtlamalarla birlikte bir AND yan tümcesi işlevi görür.

Desteklenen sorguların sadece araç özellikleri (ör. attributes.<key> = <value> veya attributes.<key1> = <value1> AND attributes.<key2> = <value2>) üzerinde desteklendiğini unutmayın. Bir filtre sorgusunda izin verilen maksimum kısıtlama sayısı 50'dir.

Ayrıca tüm özellikler dize olarak depolandığından, özelliklerle ilgili olarak desteklenen tek karşılaştırma dize karşılaştırmasıdır. Sayı veya boole değerleriyle karşılaştırma yapabilmek için değerlerin dize olarak değerlendirilmeleri için açıkça tırnak içine alınması gerekir (ör. 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 listesi veri türü.

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

object (VehicleAttribute)

Bu koleksiyondaki özelliklerin listesi.

VehicleMatchOrder

Yanıtta araç eşleşmelerinin sırasını belirtir.

Sıralamalar
UNKNOWN_VEHICLE_MATCH_ORDER Varsayılan olarak, belirtilmemiş veya tanınmayan araç eşleşmeleri için kullanılır.
PICKUP_POINT_ETA Aracın teslim alma noktasına kadar olan sürüş süresine göre artan sıra.
PICKUP_POINT_DISTANCE Aracın teslim alma noktasına kadar olan sürüş mesafesine göre artan düzen.
DROPOFF_POINT_ETA Araç indirme süresine göre artan sıra (indirme noktasına kadar). Bu sipariş, yalnızca ayrılma noktası istekte belirtilmişse kullanılabilir.
PICKUP_POINT_STRAIGHT_DISTANCE Aracın son bildirilen konumundan teslim alma noktasına olan 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ındaki ağırlıklı bir hesaplama olarak tanımlanır. Ağırlıklar, varsayılan değerlerle ayarlanır ve müşteri başına değiştirilebilir. Projeniz için bu ağırlıkların değiştirilmesi gerekiyorsa lütfen Google Destek Ekibi ile iletişime geçin.

CurrentTripsPresent

Bir aracın mevcut gezilerindeki kısıtlama türlerini belirtir.

Sıralamalar
CURRENT_TRIPS_PRESENT_UNSPECIFIED Seyahatleri olan araçların müsaitlik durumu includeBackToBack alanına göre belirlenir.
NONE Seyahati olmayan araçlar arama sonuçlarında görünebilir. Bu değer kullanıldığında includeBackToBack, true olamaz.
ANY En fazla 5 mevcut seyahat ve 10 yol noktası olan araçlar arama sonuçlarına dahil edilir. Bu değer kullanıldığında includeBackToBack, true olamaz.

VehicleMatch

SearchVehiclesRequest aracının etkin seyahat noktalarıyla eşleşen bir araç ve 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)

Aracın, istekte belirtilen teslim alma noktasına tahmini varış zamanı. Değerin boş olması, aracın TVS hesaplamasında bir hata olduğunu gösterir. SearchVehiclesRequest.include_back_to_back değeri true ise ve bu araçta aktif bir yolculuk varsa vehiclePickupEta, mevcut aktif yolculuğu tamamlamak için gereken süreyi içerir.

Nanosaniye çözünürlüğüne sahip ve en fazla dokuz kesirli basamak içeren RFC3339 UTC "Zulu" biçiminde bir zaman damgası. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

vehiclePickupDistanceMeters

integer

Mevcut seyahatlerde ara teslim alma veya bırakma noktaları da 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 teslim alma noktası arasındaki doğrusal mesafeden oluşur. (Navigasyon bitiş noktası ile istenen teslim noktası arasındaki mesafe genellikle kısadır.) Boş bir değer, mesafenin hesaplanmasında bir hata olduğunu gösterir.

vehiclePickupStraightLineDistanceMeters

integer

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

vehicleDropoffEta

string (Timestamp format)

Aracın istekte belirtilen indirme noktasına kadar olan tahmini varış süresi. TVS, istekte belirtilen dropoffPoint öncesinde herhangi bir ara noktada durmayı içerir. Değer yalnızca istekte bir bırakma noktası belirtildiğinde doldurulur. Boş bir değer, ETA'nın hesaplanmasında bir hata olduğunu gösterir.

Nanosaniye çözünürlüğüne sahip ve en fazla dokuz kesirli basamak içeren 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, teslim alma noktasından istekte belirtilen teslim noktasına kadar sürüş mesafesi (metre cinsinden). Mesafe yalnızca iki nokta arasındadır ve aracın teslim alma noktasına veya indirme noktasına gitmeden önce ziyaret edilmesi gereken diğer noktaları ya da aracın konumunu içermez. Değer yalnızca istekte bir dropoffPoint belirtildiğinde doldurulur. Boş bir değer, istekte belirtilen teslim alma noktasından teslim noktasına olan mesafenin hesaplanmasında bir hata olduğunu gösterir.

tripType

enum (TripType)

Zorunlu. Alma noktasına tahmini varış süresini hesaplamak için kullanılan istek seyahat türü.

vehicleTripsWaypoints[]

object (Waypoint)

ETA'yı hesaplamak için kullanılan yol noktalarının sıralı listesi. Listede araç konumu, araç için etkin gezilerin teslim alma noktaları ve istekte sağlanan teslim alma noktaları yer alır. Boş liste, aracın tahmini varış süresinin hesaplanmasında bir hata olduğunu gösterir.

vehicleMatchType

enum (VehicleMatchType)

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

requestedOrderedBy

enum (VehicleMatchOrder)

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

orderedBy

enum (VehicleMatchOrder)

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

Ara nokta

SearchVehiclesResponse içindeki VehicleMatch için rota üzerindeki ara noktaları tanımlar. Bu kavram, diğer tüm uç noktalarda TripWaypoint olarak gösterilir.

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üğüne sahip ve en fazla dokuz kesirli basamak içeren RFC3339 UTC "Zulu" biçiminde bir zaman damgası. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

VehicleMatchType

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

Sıralamalar
UNKNOWN Bilinmeyen araç eşleşme türü
EXCLUSIVE Araca şu anda atanmış bir seyahat yok ve araç teslim alma noktasına gidebilir.
BACK_TO_BACK Araç şu anda bir geziye atanmış durumda ancak devam eden yolculuğu tamamladıktan sonra teslim alma noktasına ilerleyebilir. TVS ve mesafe hesaplamaları mevcut seyahat hesaba katılır.
CARPOOL Araç, ortak yolculuk için yeterli kapasiteye sahip.
CARPOOL_BACK_TO_BACK Araç, teslim alma noktasına gitmeden önce mevcut aktif yolculuğunu tamamlar. TVS ve mesafe hesaplamalarında mevcut yolculuk dikkate alınır.