Method: providers.vehicles.search

แสดงรายการยานพาหนะที่ตรงกับตัวเลือกคำขอ

คำขอ HTTP

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

URL ใช้ไวยากรณ์การแปลง gRPC

พารามิเตอร์เส้นทาง

พารามิเตอร์
parent

string

ต้องระบุ ต้องอยู่ในรูปแบบ providers/{provider} ผู้ให้บริการต้องเป็นรหัสโปรเจ็กต์ (เช่น sample-cloud-project) ของโปรเจ็กต์ Google Cloud ที่บัญชีบริการที่ใช้การโทรนี้เป็นสมาชิก

เนื้อหาของคำขอ

เนื้อหาของคำขอมีข้อมูลที่มีโครงสร้างต่อไปนี้

การแสดง JSON
{
  "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)

ส่วนหัวคำขอ Fleet Engine มาตรฐาน

pickupPoint

object (TerminalLocation)

ต้องระบุ จุดรับสินค้าที่จะค้นหาใกล้ๆ

dropoffPoint

object (TerminalLocation)

สถานที่ส่งของลูกค้าที่ต้องการ ต้องกรอกข้อมูลในช่องนี้หาก tripTypes มี TripType.SHARED

pickupRadiusMeters

integer

ต้องระบุ กำหนดรัศมีการค้นหารถรอบจุดรับสินค้า ระบบจะแสดงเฉพาะยานพาหนะภายในรัศมีการค้นหาเท่านั้น ค่าต้องอยู่ระหว่าง 400 ถึง 10,000 เมตร (รวม)

count

integer

ต้องระบุ ระบุจำนวนสูงสุดของยานพาหนะที่จะส่งคืน ค่าต้องอยู่ระหว่าง 1 ถึง 50 (รวมเลขตัวแรกและตัวสุดท้าย)

minimumCapacity

integer

ต้องระบุ ระบุจำนวนผู้โดยสารที่จะต้องพิจารณาในการเดินทาง ค่าต้องมากกว่าหรือเท่ากับ 1 ระบบจะไม่พิจารณาคนขับในค่าความจุ

tripTypes[]

enum (TripType)

ต้องระบุ แสดงประเภทการเดินทางที่เสนอ ต้องมี 1 ประเภทเท่านั้น ไม่อนุญาต UNKNOWN_TRIP_TYPE จำกัดการค้นหาเฉพาะยานพาหนะที่รองรับการเดินทางประเภทนั้น

maximumStaleness

string (Duration format)

จำกัดการค้นหาเฉพาะยานพาหนะที่ส่งการอัปเดตตำแหน่งไปยัง Fleet Engine ภายในระยะเวลาที่กำหนด ยานพาหนะที่อยู่นิ่งๆ ยังคงส่งข้อมูลตำแหน่งอยู่นั้นไม่ถือว่าเป็นข้อมูลเก่า หากไม่ได้ตั้งค่าช่องนี้ เซิร์ฟเวอร์จะใช้ค่าเริ่มต้น 5 นาที

ระยะเวลาเป็นวินาทีโดยมีตัวเลขเศษส่วนไม่เกิน 9 หลัก ซึ่งลงท้ายด้วย "s" เช่น "3.5s"

vehicleTypes[]

object (VehicleType)

ต้องระบุ จำกัดการค้นหาเฉพาะยานพาหนะที่มีประเภทที่ระบุไว้เท่านั้น ต้องระบุประเภทยานพาหนะอย่างน้อย 1 ประเภท ไม่อนุญาตให้ใช้ยานพาหนะในหมวดหมู่ 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 รายการ ค่านี้ตรงกับจำนวนแอตทริบิวต์สูงสุดที่อนุญาตในยานพาหนะ

requiredOneOfAttributes[]

object (VehicleAttributeList)

จำกัดการค้นหาเฉพาะยานพาหนะที่มีแอตทริบิวต์ที่ระบุอย่างน้อย 1 รายการใน VehicleAttributeList แต่ละรายการ ยานพาหนะต้องตรงกับแอตทริบิวต์อย่างน้อย 1 รายการในแต่ละรายการ ช่องนี้เป็นการแยก/หรือการดำเนินการแบบเหมารวมในแต่ละ VehicleAttributeList และการดำเนินการเชื่อม/และในคอลเล็กชันของ VehicleAttributeList

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 และการดำเนินงานแบบ Disjunction/OR ทั้งหมดในคอลเล็กชันของ VehicleAttributeList

orderBy

enum (VehicleMatchOrder)

ต้องระบุ ระบุเกณฑ์การจัดลำดับที่ต้องการเพื่อให้ได้ผลลัพธ์

includeBackToBack

boolean

คอลัมน์นี้ระบุว่ายานพาหนะที่มีการเดินทาง 1 ครั้งมีสิทธิ์สำหรับการค้นหานี้หรือไม่ ช่องนี้จะใช้เมื่อไม่ได้ระบุ currentTripsPresent เท่านั้น เมื่อไม่ได้ระบุ currentTripsPresent และช่องนี้คือ false ยานพาหนะที่มีการเดินทางที่กำหนดจะถูกยกเว้นจากผลการค้นหา เมื่อไม่ได้ระบุ currentTripsPresent และช่องนี้คือ true ผลการค้นหาอาจรวมถึงยานพาหนะที่มีการเดินทางที่ใช้งานอยู่ 1 รายการซึ่งมีสถานะ ENROUTE_TO_DROPOFF เมื่อระบุ currentTripsPresent แล้ว ช่องนี้จะตั้งค่าเป็นจริงไม่ได้

ค่าเริ่มต้นคือ false

tripId

string

ระบุการเดินทางที่เกี่ยวข้องกับ SearchVehicleRequest นี้

currentTripsPresent

enum (CurrentTripsPresent)

คอลัมน์นี้ระบุว่ายานพาหนะที่มีการเดินทางที่ใช้งานอยู่มีสิทธิ์ใช้การค้นหานี้หรือไม่ ต้องตั้งค่าเป็นอย่างอื่นที่ไม่ใช่ CURRENT_TRIPS_PRESENT_UNSPECIFIED หาก tripType มี SHARED

filter

string

ไม่บังคับ ตัวกรองการค้นหาที่จะใช้เมื่อค้นหายานพาหนะ โปรดดู http://aip.dev/160 เพื่อดูตัวอย่างไวยากรณ์ของตัวกรอง

ช่องนี้ออกแบบมาเพื่อแทนที่ช่อง requiredAttributes, requiredOneOfAttributes และ required_one_of_attributes_sets หากมีการระบุค่าที่ไม่ว่างเปล่าที่นี่ ช่องต่อไปนี้ต้องว่างเปล่า: requiredAttributes, requiredOneOfAttributes และ required_one_of_attributes_sets

ตัวกรองนี้ทำหน้าที่เป็นอนุประโยค "และ" ที่มีข้อจำกัดอื่นๆ เช่น minimumCapacity หรือ vehicleTypes

โปรดทราบว่าระบบจะรองรับคำค้นหาเพียงรายการเดียวสำหรับแอตทริบิวต์ยานพาหนะ (เช่น attributes.<key> = <value> หรือ attributes.<key1> = <value1> AND attributes.<key2> = <value2>) จำนวนข้อจำกัดสูงสุดที่อนุญาตในการค้นหาตามตัวกรองคือ 50

นอกจากนี้ระบบจะจัดเก็บแอตทริบิวต์ทั้งหมดเป็นสตริง ดังนั้นการเปรียบเทียบกับแอตทริบิวต์ที่รองรับมีเพียงการเปรียบเทียบสตริงเท่านั้น ในการเปรียบเทียบกับตัวเลขหรือค่าบูลีน ค่าดังกล่าวจะต้องได้รับการยกมาแสดงอย่างชัดเจนเพื่อให้ถือว่าเป็นสตริง (เช่น attributes.<key> = "10" หรือ attributes.<key> = "true")

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ SearchVehiclesResponse