Method: providers.vehicles.search

यह विकल्प, अनुरोध के विकल्पों से मेल खाने वाले वाहनों की सूची दिखाता है.

एचटीटीपी अनुरोध

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

यूआरएल, gRPC ट्रांसकोडिंग सिंटैक्स का इस्तेमाल करता है.

पाथ के पैरामीटर

पैरामीटर
parent

string

ज़रूरी है. providers/{provider} फ़ॉर्मैट में होना चाहिए. कंपनी को उस Google Cloud प्रोजेक्ट का प्रोजेक्ट आईडी (उदाहरण के लिए, sample-cloud-project) होना चाहिए जिसका सेवा खाता सदस्य के तौर पर कॉल कर रहा है.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में इस तरह का डेटा शामिल होता है:

जेएसओएन के काेड में दिखाना
{
  "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
}
फ़ील्ड
header

object (RequestHeader)

स्टैंडर्ड फ़्लीट इंजन अनुरोध हेडर.

pickupPoint

object (TerminalLocation)

ज़रूरी है. आस-पास खोजने के लिए पिकअप की जगह.

dropoffPoint

object (TerminalLocation)

ग्राहक जिस जगह से सामान छोड़ना चाहता है वह जगह. अगर tripTypes में TripType.SHARED है, तो फ़ील्ड को भरना ज़रूरी है.

pickupRadiusMeters

integer

ज़रूरी है. पिकअप पॉइंट के आस-पास वाहन की खोज का दायरा तय करता है. सिर्फ़ खोज के दायरे में आने वाले वाहन दिखेंगे. इसकी वैल्यू 400 और 10,000 मीटर (दोनों शामिल) के बीच होनी चाहिए.

count

integer

ज़रूरी है. इससे यह पता चलता है कि ज़्यादा से ज़्यादा कितने वाहन लौटाए जा सकते हैं. वैल्यू 1 से 50 (दोनों शामिल) के बीच होनी चाहिए.

minimumCapacity

integer

ज़रूरी है. उन यात्रियों की संख्या बताता है जिन्हें यात्रा के लिए चुना जा रहा है. वैल्यू, एक से ज़्यादा या उसके बराबर होनी चाहिए. ड्राइवर को क्षमता की वैल्यू में शामिल नहीं किया गया है.

tripTypes[]

enum (TripType)

ज़रूरी है. यह बताता है कि यात्रा किस तरह की है. सटीक रूप से एक प्रकार शामिल होना चाहिए. UNKNOWN_TRIP_TYPE की अनुमति नहीं है. खोज को सिर्फ़ उन वाहनों तक सीमित कर देता है जो उस तरह की यात्रा के साथ काम कर सकते हैं.

maximumStaleness

string (Duration format)

इस सेटिंग से, सिर्फ़ उन वाहनों को खोजा जा सकता है जिन्होंने तय समय के दौरान, फ़्लीट इंजन को जगह की जानकारी के अपडेट भेजे हैं. स्टेशनरी वाहन जो अभी भी अपने स्थान को ट्रांसमिट कर रहे हैं उन्हें पुराना नहीं माना जाता. अगर यह फ़ील्ड सेट नहीं है, तो सर्वर डिफ़ॉल्ट वैल्यू के तौर पर पांच मिनट इस्तेमाल करता है.

सेकंड में अवधि, जिसमें नौ भिन्नात्मक अंक हो सकते हैं और जो 's' पर खत्म होती है. उदाहरण: "3.5s".

vehicleTypes[]

object (VehicleType)

ज़रूरी है. खोज को, इसी तरह के किसी एक टाइप के वाहनों तक सीमित करता है. कम से कम एक वाहन का टाइप बताना ज़रूरी है. UNKNOWN कैटगरी वाले वाहन टाइप की अनुमति नहीं है.

requiredAttributes[]

object (VehicleAttribute)

कॉलर requiredAttributes, requiredOneOfAttributes, और requiredOneOfAttributeSets फ़ील्ड के किसी भी कॉम्बिनेशन का इस्तेमाल करके, मुश्किल लॉजिकल ऑपरेशन बना सकते हैं.

requiredAttributes एक सूची है; requiredOneOfAttributes मैसेज का इस्तेमाल करता है, जिससे सूचियों की सूची बनाई जा सकती है. संयोजन में, दो फ़ील्ड इस एक्सप्रेशन की संरचना की अनुमति देते हैं:

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

खोज को सिर्फ़ उन वाहनों तक सीमित करता है जिनके लिए खास एट्रिब्यूट होते हैं. यह फ़ील्ड एक संयोजी/और कार्रवाई है. ज़्यादा से ज़्यादा 50 requiredAttributes का इस्तेमाल किया जा सकता है. यह एट्रिब्यूट, वाहन में इस्तेमाल किए जा सकने वाले एट्रिब्यूट की संख्या से मेल खाता है.

requiredOneOfAttributes[]

object (VehicleAttributeList)

खोज को सिर्फ़ उन वाहनों तक सीमित करता है जिनके हर VehicleAttributeList में, बताए गए एट्रिब्यूट में से कम से कम एक एट्रिब्यूट दिया गया हो. हर सूची में, वाहन कम से कम एक एट्रिब्यूट से मेल खाना चाहिए. यह फ़ील्ड, हर VehicleAttributeList में शामिल डिसजंक्शन/OR ऑपरेशन और VehicleAttributeList के पूरे कलेक्शन में होने वाली जोड़ी/AND कार्रवाई को शामिल करता है.

requiredOneOfAttributeSets[]

object (VehicleAttributeList)

requiredOneOfAttributeSets अतिरिक्त सुविधाएं देता है.

requiredOneOfAttributes की तरह, requiredOneOfAttributeSets एक मैसेज का इस्तेमाल करता है, जो सूचियों की सूची बनाने की अनुमति देता है, जिससे इस तरह के एक्सप्रेशन की अनुमति मिलती है:

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

खोज को सिर्फ़ उन वाहनों तक सीमित करता है जिनमें VehicleAttributeList में सभी एट्रिब्यूट शामिल होते हैं. हर सूची में मौजूद वाहन, सभी एट्रिब्यूट से मेल खाना चाहिए. यह फ़ील्ड, हर VehicleAttributeList में होने वाली जोड़ी/और कार्रवाई को कहते हैं. साथ ही, यह VehicleAttributeList के पूरे कलेक्शन में डिसजंक्शन/या की सभी कार्रवाइयों को शामिल करता है.

orderBy

enum (VehicleMatchOrder)

ज़रूरी है. नतीजों के लिए मनचाहे क्रम की शर्त तय करता है.

includeBackToBack

boolean

इससे पता चलता है कि एक ही यात्रा वाले वाहन इस खोज में शामिल किए जा सकते हैं या नहीं. इस फ़ील्ड का इस्तेमाल सिर्फ़ तब किया जाता है, जब currentTripsPresent के बारे में जानकारी न दी गई हो. अगर currentTripsPresent की वैल्यू नहीं दी गई है और इस फ़ील्ड को false पर सेट किया गया है, तो जिन वाहनों के लिए यात्रा असाइन की जाएगी उन्हें खोज के नतीजों में शामिल नहीं किया जाएगा. अगर currentTripsPresent की जानकारी नहीं दी गई है और इस फ़ील्ड में true है, तो खोज के नतीजों में वे वाहन शामिल हो सकते हैं जिनमें एक चालू यात्रा हो और जिनकी स्थिति ENROUTE_TO_DROPOFF हो. अगर currentTripsPresent बताया गया है, तो इस फ़ील्ड को 'सही' पर सेट नहीं किया जा सकता.

डिफ़ॉल्ट वैल्यू false है.

tripId

string

इस SearchVehicleRequest से जुड़ी यात्रा को दिखाता है.

currentTripsPresent

enum (CurrentTripsPresent)

इससे पता चलता है कि चालू यात्राओं वाले वाहन इस खोज में शामिल किए जा सकते हैं या नहीं. अगर tripType में SHARED शामिल है, तो इसे CURRENT_TRIPS_PRESENT_UNSPECIFIED के बजाय किसी अन्य पर सेट करना चाहिए.

filter

string

ज़रूरी नहीं. वाहनों की खोज करते समय लागू की जाने वाली फ़िल्टर क्वेरी. फ़िल्टर सिंटैक्स के उदाहरणों के लिए, http://aip.dev/160 देखें.

यह फ़ील्ड requiredAttributes, requiredOneOfAttributes, और required_one_of_attributes_sets फ़ील्ड को बदलने के लिए डिज़ाइन किया गया है. अगर यहां ऐसी वैल्यू डाली गई है जो खाली नहीं है, तो ये फ़ील्ड खाली होने चाहिए: requiredAttributes, requiredOneOfAttributes, और required_one_of_attributes_sets.

यह फ़िल्टर, minimumCapacity या vehicleTypes जैसी अन्य कंस्ट्रेंट के साथ एक AND क्लॉज़ के रूप में काम करता है.

ध्यान दें कि सिर्फ़ वाहन के एट्रिब्यूट (जैसे कि attributes.<key> = <value> या attributes.<key1> = <value1> AND attributes.<key2> = <value2>) के लिए की जाने वाली क्वेरी का इस्तेमाल किया जा सकता है. फ़िल्टर क्वेरी में ज़्यादा से ज़्यादा 50 पाबंदियां हो सकती हैं.

साथ ही, सभी एट्रिब्यूट, स्ट्रिंग के तौर पर सेव किए जाते हैं. इसलिए, एट्रिब्यूट के लिए सिर्फ़ स्ट्रिंग की तुलनाएं की जाती हैं. संख्या या बूलियन वैल्यू से तुलना करने के लिए, वैल्यू को साफ़ तौर पर स्ट्रिंग के तौर पर माना जाना चाहिए, जैसे कि attributes.<key> = "10" या attributes.<key> = "true".

जवाब का मुख्य भाग

कामयाब रहने पर, जवाब के मुख्य हिस्से में SearchVehiclesResponse का एक इंस्टेंस शामिल किया जाता है.