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 gövdesi, aşağıdaki yapıya sahip 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ında aranacak teslim noktası.

dropoffPoint

object (TerminalLocation)

Müşterinin planladığı ayrılma konumu. tripTypes, TripType.SHARED değerini içeriyorsa bu alan gereklidir.

pickupRadiusMeters

integer

Zorunlu. Teslim alma noktasının çevresindeki 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 (her ikisi de dahil) arasında olmalıdır.

count

integer

Zorunlu. Geri dönülecek maksimum araç sayısını belirtir. Değer 1 ile 50 (her ikisi de 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 seyahat türünü gösterir. 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'e konum güncellemeleri gönderen araçlarla kısıtlar. Hareket halindeyken konumlarını aktarmaya devam eden sabit araçlar eski olarak kabul edilmez. Bu alan ayarlanmazsa sunucu, varsayılan değer olarak beş dakikayı kullanır.

En fazla dokuz kesir basamağı olan ve "s" ile biten, saniye cinsinden 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 kategorisi olan 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 listedir; requiredOneOfAttributes, liste listesine izin veren bir mesaj kullanıyor. Bu iki alan, birlikte bu ifadenin bileşimine 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 requiredattribute özelliğine 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 içinde belirtilen özelliklerden en az birine sahip araçlarla kısıtlar. 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şlemidir ve VehicleAttributeList koleksiyonundaki bir bağlantı/VE işlemidir.

requiredOneOfAttributeSets[]

object (VehicleAttributeList)

requiredOneOfAttributeSets ek işlevler sunar.

requiredOneOfAttributes işlevine 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çindeki tüm özelliklere sahip araçlarla kısıtlar. Her listede bir aracın tüm özelliklerle eşleşmesi gerekir. Bu alan, her VehicleAttributeList içindeki bir bağlaç/VE işlemidir ve VehicleAttributeList koleksiyonundaki kapsayıcı ayırma/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 belirtilmediğinde ve bu alan false olduğunda, atanmış gezilere sahip 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.

Yalnızca araç özelliklerinde (örneğin, attributes.<key> = <value> veya attributes.<key1> = <value1> AND attributes.<key2> = <value2>) desteklenen sorguların desteklendiğini unutmayın. 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şı desteklenen karşılaştırmalar yalnızca dize karşılaştırmaları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çütlerine uyan 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

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

Sıralamalar
UNKNOWN_VEHICLE_MATCH_ORDER Varsayılan, belirtilmemiş veya tanınmayan araç eşleşmeleri sırası 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ç sürüş 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 en son bildirilen konumundan teslim alma noktasına kadar olan düz çizgiye 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. Projenizde bu ağırlıkların değiştirilmesi gerekiyorsa lütfen Google destek ekibiyle iletişime geçin.

CurrentTripsPresent

Bir aracın mevcut yolculuklarında uygulanan kısıtlama türlerini belirtir.

Sıralamalar
CURRENT_TRIPS_PRESENT_UNSPECIFIED Yolculuk imkanı olan araçların kullanılabilirliği includeBackToBack alanına tabidir.
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 güncel ve 10 ara nokta içeren araçlar arama sonuçlarına dahil edilir. Bu değer kullanıldığında includeBackToBack, true olamaz.

VehicleMatch

SearchVehiclesRequest aracının etkin yolculuk noktalarıyla eşleşen bir araçla ilgili aracı 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 noktasına giden TVS'si. 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.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

vehiclePickupDistanceMeters

integer

Aracın mevcut konumu ile istekte belirtilen teslim alma noktasına olan mesafe (mevcut seyahatlerdeki ara alma veya bırakma noktaları dahil). Bu mesafe, hesaplanan sürüş (rota) mesafesini ve navigasyon uç noktası ile istenen teslim noktası arasındaki düz çizgi mesafesini içerir. (Navigasyon bitiş noktası ile istenen teslim noktası arasındaki mesafe genellikle kısadır.) Boş bir değer, mesafe hesaplanırken hata olduğunu gösterir.

vehiclePickupStraightLineDistanceMeters

integer

Zorunlu. Araç ile istekte belirtilen teslim alma 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, TVS hesaplanırken hata oluştuğunu gösterir.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

vehiclePickupToDropoffDistanceMeters

integer

Aracın alma noktasından istekte belirtilen indirme noktasına kadar olan 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 ayrılma noktasına olan mesafenin hesaplanamadığını gösterir.

tripType

enum (TripType)

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

vehicleTripsWaypoints[]

object (Waypoint)

TVS'yi hesaplamak için kullanılan ara noktaların sıralı listesi. Listede aracın konumu, aracın etkin yolculuklarının teslim alma noktaları ve istekte sağlanan teslim alma noktaları yer alır. Boş bir liste, aracın TVS hesaplaması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 sıra.

orderedBy

enum (VehicleMatchOrder)

Bu araç için kullanılan gerçek sıra. Normalde bu değer "orderBy" ile talepten alan adı; Ancak, dahili sunucu hatası gibi belirli durumlarda farklı bir yöntem (ör. PICKUP_POINT_STRAIGHT_DISTANCE) 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.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

VehicleMatchType

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

Sıralamalar
UNKNOWN Bilinmeyen araç eşleme türü
EXCLUSIVE Şu anda araca atanmış bir yolculuk yok ve alma noktasına ilerleyebilirsiniz.
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ında mevcut yolculuk hesaba katılır.
CARPOOL Araç, ortak yolculuk için yeterli kapasiteye sahip.
CARPOOL_BACK_TO_BACK Araç, teslim alma noktasına geçmeden önce mevcut ve aktif yolculuğunu bitirir. TVS ve mesafe hesaplamalarında mevcut yolculuk hesaba katılır.