मांग पर यात्रा की सेवा के हिस्से के तौर पर, आस-पास मौजूद वाहन खोजे जा सकते हैं
SearchVehicles
तरीके का इस्तेमाल करके.
SearchVehicles
वाला तरीका इस्तेमाल करके, आस-पास मौजूद वाहनों को अपने इलाके में खोजा जा सकता है
किसी खास राइड या डिलीवरी के लिए सबसे सही उपभोक्ता वाला मोबाइल ऐप्लिकेशन
अनुरोध. SearchVehicles
एपीआई, उन वाहनों की रैंक की सूची दिखाता है जिनके पास
एट्रिब्यूट, अनुरोध की गई यात्रा एट्रिब्यूट से मेल खाते हैं. रैंकिंग आपके हिसाब से क्रम में लगाई गई है
पिकअप पॉइंट से पहुंचने का अनुमानित समय, दूरी या सीधी लाइन की दूरी.
खोज विशेषताएं | वाहन की विशेषताएं |
---|---|
|
|
SearchVehicles
तरीके का इस्तेमाल करें
SearchVehicles
का इस्तेमाल करने के लिए, यह सामान्य तरीका अपनाएं:
- असाइन की जाने वाली यात्रा के आधार पर
SearchVehiclesRequest
बनाएं. SearchVehicles
एपीआई (vehicleService.searchVehicles
) को इस तरीके से कॉल करें: बनाया गया अनुरोध.- एपीआई से लौटाए गए
SearchVehicleResponse
को प्रोसेस करें.
SearchVehiclesRequest फ़ील्ड
इसे बनाने के लिए, नीचे दिए गए ज़रूरी एट्रिब्यूट फ़ील्ड का इस्तेमाल करें
SearchVehiclesRequest
:
फ़ील्ड | ब्यौरा |
---|---|
अभिभावक | ज़रूरी है. प्रोवाइडर/{provider} में होना चाहिए. सेवा देने वाली कंपनी, उस Google Cloud प्रोजेक्ट का प्रोजेक्ट आईडी होनी चाहिए जिसका यह कॉल करने वाला सेवा खाता सदस्य है. |
vehicle_types | ज़रूरी है. अनुरोध किए गए वाहनों के टाइप, जैसे कि AUTO, TWO_WHEELER, TAXI, TRUCK, BICYCLE या PEDESTRIAN. |
trip_types | ज़रूरी है. EXCLUSIVE (हर ड्राइवर के लिए एक बार में एक चालू यात्रा) या शेयर की गई (हर ड्राइवर के लिए एक बार में एक या एक से ज़्यादा यात्राएं). |
minimum_capacity | ज़रूरी है. नई यात्रा के लिए, यात्रियों या डिलीवरी के लिए वाहन की कम से कम बची हुई क्षमता. |
pickup_point | ज़रूरी है. अक्षांश/देशांतर निर्देशांक में यात्रा से जुड़ी पिकअप की जगह. |
dropoff_point | ज़रूरी नहीं. अक्षांश/देशांतर निर्देशांक में, यात्रा की ड्रॉप-ऑफ़ जगह की जानकारी. अगरtrip_type में TripType.SHARED है, तो फ़ील्ड में वैल्यू डालना ज़रूरी है. |
pickup_radius_meters | ज़रूरी है. पिकअप पॉइंट से, वाहन खोजने के इलाके का दायरा मीटर में. |
order_by | ज़रूरी है. इनमें से किसी एक का इस्तेमाल करके वाहन ऑर्डर करें:
|
सोलर पैनलों की संख्या | ज़रूरी है. रिटर्न के लिए 1 से 50 तक के वाहनों की ज़्यादा से ज़्यादा संख्या. |
फ़िल्टर | Optional. वाहनों की खोज करते समय लागू करने के लिए फ़िल्टर क्वेरी. |
का पूरा सेट देखने के लिए संदर्भ दस्तावेज़ देखें SearchVehicleRequest फ़ील्ड.
SearchVehiclesRequest की स्थितियां
इस सेक्शन में, SearchVehiclesRequest
बनाने के उदाहरण दिए गए हैं.
उदाहरण के लिए, मान लें कि कोई ग्राहक RestaurantX से पिक अप करना चाहता है, और आपके पास चार वाहन हैं:
- पहला वाहन: RestaurantX से 3,500 मीटर की दूरी पर है.
- वाहन 2: ऐक्टिव ट्रिप और पिकअप की सुविधा वाले रेस्टोरेंटX से 100 मीटर की दूरी पर और जगह A और B पर छोड़ दें.
- वाहन 3: RestaurantX से 200 मीटर की दूरी पर, एक ड्रॉप ऑफ़ भी है बहुत दूर हैं.
- वाहन 4: RestaurantX से 1,000 मीटर दूर.
इस इमेज में, वाहन के लौटाने के लिए अलग-अलग अनुरोध दिखाए गए हैं.
रिटर्न वाहन 4
Pickup at RestaurantX, radius = 1200m, order by PICKUP_POINT_ETA
रिटर्न वाहन 3 और 4
Pickup at RestaurantX, radius = 1200m, order by PICKUP_POINT_ETA, is_back_to_back enabled
वाहन 2, 3, और 4 वापस करता है
Pickup at RestaurantX, radius = 1200m, order by PICKUP_POINT_ETA, current_trips_present = ALL
SearchVehiclesResponse फ़ील्ड
SearchVehiclesResponse
में VehicleMatch
इकाइयों की सूची होती है, जिन्हें रैंक दी जाती है
SearchVehiclesRequest
में दिए गए order_by एट्रिब्यूट के हिसाब से. हर
VehicleMatch
इकाई में ये फ़ील्ड हैं:
फ़ील्ड | ब्यौरा |
---|---|
गाड़ी | Vehicle ऑब्जेक्ट, जिसमेंvehicle_id और Vehicle एट्रिब्यूट शामिल हैं. |
vehicle_pickup_eta | नई यात्रा के लिए पिक अप की जगह पर वाहन का ETA. यह ड्राइविंग ETA है. |
vehicle_pickup_distance_meter | नई यात्रा के लिए, वाहन और पिकअप की जगह के बीच की दूरी, मीटर में. |
vehicle_pickup_straight_line_distance_meter | नई यात्रा के लिए, गाड़ी और पिकअप की जगह के बीच की सीधी लाइन की दूरी. मीटर में. |
vehicle_dropoff_eta | टाइमस्टैंप नई यात्रा के पिकअप स्थान पर वाहन के ETA का. ध्यान दें कि ETA ड्राइविंग ETA है. |
vehicle_trips_waypoints | फ़िलहाल, वाहन को असाइन की गई चालू यात्राओं के लिए, बचे हुए वेपॉइंट की सूची. इसमें पिकअप और ड्रॉप-ऑफ़ पॉइंट भी शामिल हैं. |
vehicle_match_type | वाहन की यात्रा का टाइप, EXCLUSIVE, BACK_TO_BACK, CARPOOL या CARPOOL_BACK_TO_BACK. |
VehicleMatch
फ़ील्ड की पूरी सूची के लिए, यहां देखें:
VehicleMatch message
(जीआरपीसी)VehicleMatch resource
(REST)
फ़िल्टर क्वेरी का इस्तेमाल करना
SearchVehicles
और ListVehicles
में, वाहन के एट्रिब्यूट को फ़िल्टर किया जा सकता है
इसके लिए, फ़िल्टर क्वेरी का इस्तेमाल करें.
फ़िल्टर क्वेरी का इस्तेमाल करके, सिर्फ़ वाहनों के कस्टम एट्रिब्यूट को फ़िल्टर किया जा सकता है और
इसे दूसरे फ़ील्ड के लिए इस्तेमाल नहीं किया जा सकता. जब ऐसी खोज में इस्तेमाल किया जाता है जिसमें अन्य फ़ील्ड शामिल हों
फ़िल्टर क्वेरी, जैसे कि minimum_capacity
या vehicle_types
, फ़िल्टर क्वेरी
AND
क्लॉज़ के तौर पर काम करता है.
उदाहरण के लिए, अगर कोई ऐसा वाहन खोजा जाता है जिसकी कपैसिटी कम से कम 6 साल और
attributes
को फ़िल्टर करें, जैसे कि पालतू जानवरों के लिए सही है, आपकी शर्तें सिर्फ़ नतीजे के तौर पर दिखेंगी
ऐसे वाहन जो पालतू जानवरों के लिए सही हैं और जिनमें कम से कम 6 लोग बैठ सकते हैं.
फ़िल्टर क्वेरी सिंटैक्स के लिए AIP-160 देखें देखें. वाहन की विशेषताएं बनाने की जानकारी के लिए, वाहन देखें एट्रिब्यूट फ़ील्ड को वाहन के फ़ील्ड को अपडेट करने गाइड में डालें.
SearchVehicles के उदाहरण
नीचे दिया गया उदाहरण दिखाता है कि SearchVehicles
API का इस्तेमाल
Java gRPC लाइब्रेरी.
static final String PROJECT_ID = "project-id";
VehicleServiceBlockingStub vehicleService =
VehicleService.newBlockingStub(channel);
String parent = "providers/" + PROJECT_ID;
SearchVehiclesRequest searchVehiclesRequest = SearchVehiclesRequest.newBuilder()
.setParent(parent)
.setPickupPoint( // Grand Indonesia East Mall
TerminalLocation.newBuilder().setPoint(
LatLng.newBuilder().setLatitude(-6.195139).setLongitude(106.820826)))
.setDropoffPoint( // Balai Sidang Jkt Convention Center
TerminalLocation.newBuilder().setPoint(
LatLng.newBuilder().setLatitude(-6.213796).setLongitude(106.807195)))
.setPickupRadiusMeters(2000)
.setCount(10)
.setMinimumCapacity(2)
.addTripTypes(TripType.EXCLUSIVE)
.addVehicleTypes(VehicleType.newBuilder().setCategory(Category.AUTO).build())
.setCurrentTripsPresent(CurrentTripsPresent.ANY)
.setFilter("attributes.on_trip=\"false\"")
.setOrderBy(VehicleMatchOrder.PICKUP_POINT_ETA)
.build();
try {
SearchVehiclesResponse searchVehiclesResponse =
vehicleService.searchVehicles(searchVehiclesRequest);
} catch (StatusRuntimeException e) {
Status s = e.getStatus();
switch (s.getCode()) {
case NOT_FOUND:
break;
case PERMISSION_DENIED:
break;
}
return;
}
List<VehicleMatch> vehicleMatches =
searchVehicleResponse.getMatchesList();
// Each VehicleMatch contains a Vehicle entity and information about the
// distance and ETA to the pickup point and drop-off point.