আপনার অন-ডিমান্ড রাইডস এবং ডেলিভারি সলিউশনের অংশ হিসাবে, রুট প্ল্যানিং এবং ডিসপ্যাচ ক্ষমতা আপনাকে একটি SearchVehicles
API প্রদান করে কাছাকাছি ড্রাইভার খুঁজে পেতে দেয়।
SearchVehicles
API আপনাকে আপনার অন-ডিমান্ড রাইডস এবং ডেলিভারি সলিউশন কনজিউমার অ্যাপে পাওয়া আশেপাশের ড্রাইভারদের খুঁজে পেতে দেয় যারা রাইড বা ডেলিভারির অনুরোধের মতো কাজের জন্য সবচেয়ে উপযুক্ত। SearchVehicles
API আপনার বহরে থাকা যানবাহনের বৈশিষ্ট্যগুলির সাথে টাস্ক অ্যাট্রিবিউটের সাথে মিলে যাওয়া ড্রাইভারগুলির একটি র্যাঙ্ক করা তালিকা প্রদান করে৷
টাস্ক বৈশিষ্ট্য অন্তর্ভুক্ত করতে পারে:
- পিকআপ এবং ড্রপ-অফ অবস্থান
- অনুরোধ করা যানবাহন এবং ভ্রমণের ধরন
- প্রয়োজনীয় ক্ষমতা
- অন্যান্য প্রয়োজনীয় মিল বৈশিষ্ট্য
যানবাহনের বৈশিষ্ট্যগুলি অন্তর্ভুক্ত করতে পারে:
- একটি গাড়ির সর্বশেষ পরিচিত অবস্থান
- গাড়ির অবস্থা, প্রকার বা ক্ষমতা
- অন্যান্য কাস্টম বৈশিষ্ট্য
র্যাঙ্কিং আপনার পছন্দ অনুযায়ী নির্ধারিত হয় ETA, দূরত্ব বা পিকআপ পয়েন্ট থেকে সরলরেখার দূরত্ব।
মনে রাখবেন যে SearchVehicles
API ব্যবহার করার জন্য আপনার ফ্লিট ইঞ্জিন পরিষেবা সুপার ইউজার বা কনজিউমার SDK ব্যবহারকারীর বিশেষাধিকার থাকতে হবে। আরও তথ্যের জন্য, প্রমাণীকরণ এবং অনুমোদন দেখুন।
SearchVehicles API ব্যবহার করে
SearchVehicles
API ব্যবহার করতে:
- বরাদ্দ করা টাস্কের উপর ভিত্তি করে একটি
SearchVehiclesRequest
তৈরি করুন। - তৈরি করা অনুরোধের সাথে
SearchVehicles
API (vehicleService.searchVehicles
) এ কল করুন। - API থেকে ফিরে আসা
SearchVehicleResponse
প্রক্রিয়া করুন।
অনুসন্ধান যানবাহন অনুরোধ ক্ষেত্র
একটি SearchVehiclesRequest
তৈরি করতে নিম্নলিখিত প্রয়োজনীয় বৈশিষ্ট্য ক্ষেত্রগুলি ব্যবহার করুন:
মাঠ | বর্ণনা |
---|---|
অভিভাবক | প্রয়োজন ফর্ম্যাট প্রদানকারী/{provider}-এর মধ্যে হতে হবে। প্রদানকারীকে অবশ্যই Google ক্লাউড প্রজেক্টের প্রজেক্ট আইডি (উদাহরণস্বরূপ, নমুনা-ক্লাউড-প্রকল্প) হতে হবে যার পরিষেবা অ্যাকাউন্টটি এই কল করছে সদস্য। |
যানবাহনের_প্রকার | প্রয়োজন অনুরোধ করা যানবাহনের প্রকার, হয় AUTO, TWO_WHEELER, TAXI, TRUCK, BICYCLE, বা পথচারী৷ |
ট্রিপ_টাইপ | প্রয়োজন হয় এক্সক্লুসিভ (ড্রাইভার প্রতি একবারে একটি সক্রিয় ট্রিপ) অথবা শেয়ার করা (ড্রাইভার প্রতি এক সময়ে এক বা একাধিক ট্রিপ)। |
সর্বনিম্ন_ক্ষমতা | প্রয়োজন যাত্রী বা ডেলিভারির জন্য একটি নতুন কাজের জন্য গাড়ির ন্যূনতম অবশিষ্ট ক্ষমতা। |
সংগ্রহের স্থান | প্রয়োজন ল্যাট/লং কোঅর্ডিনেটে টাস্কের পিকআপ অবস্থান। |
ড্রপঅফ_পয়েন্ট | ঐচ্ছিক। ল্যাট/লং কোঅর্ডিনেটে টাস্কের ড্রপ-অফ অবস্থান। যদি trip_types-এ TripType.SHARED থাকে তাহলে ফিল্ডের প্রয়োজন হয়। |
পিকআপ_ব্যাসার্ধ_মিটার | প্রয়োজন পিকআপ পয়েন্ট থেকে যানবাহন অনুসন্ধান এলাকার মিটারের ব্যাসার্ধ। |
order_by | প্রয়োজন নিম্নলিখিত একটি দ্বারা যানবাহন অর্ডার করুন:
|
গণনা | প্রয়োজন 1 থেকে 50টি ফেরত যাওয়ার জন্য সর্বাধিক যানবাহন। |
SearchVehicleRequestfields- এর সম্পূর্ণ সেট দেখতে রেফারেন্স ডকুমেন্টেশন পড়ুন।
অনুসন্ধান যানবাহন অনুরোধের উদাহরণ
এই বিভাগটি কিভাবে একটি SearchVehiclesRequest
তৈরি করতে হয় তার উদাহরণ দেখায়।
উদাহরণ স্বরূপ, ধরুন রেস্তোরাঁএক্স এবং চারটি গাড়িতে আপনার একটি পিকআপ টাস্ক বরাদ্দ করা আছে:
- যানবাহন 1 , যা রেস্টুরেন্টএক্স থেকে 3500মি দূরে।
- যানবাহন 2 , যা রেস্তোরাঁএক্স থেকে 100 মিটার দূরে এবং একটি পিকআপ সহ একটি সক্রিয় ট্রিপ রয়েছে A এবং B অবস্থানে।
- যানবাহন 3 , যা রেস্তোরাঁএক্স থেকে 200 মিটার দূরে এবং একটি ড্রপ অফ খুব দূরে বাকি আছে।
- যানবাহন 4 , যা রেস্টুরেন্টএক্স থেকে 1000মি দূরে।
নিম্নলিখিত SearchVehiclesRequest
যানবাহন 4 প্রদান করে:
Pickup at RestaurantX, radius = 1200m, order by PICKUP_POINT_ETA
নিম্নলিখিত SearchVehiclesRequest
যানবাহন 3 এবং 4 প্রদান করে:
Pickup at RestaurantX, radius = 1200m, order by PICKUP_POINT_ETA, is_back_to_back enabled
নিম্নলিখিত SearchVehiclesRequest
যানবাহন 2, 3, এবং 4 প্রদান করে:
Pickup at RestaurantX, radius = 1200m, order by PICKUP_POINT_ETA, current_trips_present = ALL
যানবাহন প্রতিক্রিয়া ক্ষেত্র অনুসন্ধান করুন
একটি SearchVehiclesResponse
VehicleMatch
সত্তার একটি তালিকা থাকে, যা SearchVehiclesRequest
এ নির্দিষ্ট অর্ডার_বাই অ্যাট্রিবিউট দ্বারা র্যাঙ্ক করা হয়। প্রতিটি VehicleMatch
সত্তার নিম্নলিখিত ক্ষেত্র রয়েছে:
মাঠ | বর্ণনা |
---|---|
যানবাহন | যানবাহনের আইডি এবং Vehicle বৈশিষ্ট্য সহ Vehicle বস্তু। |
যানবাহন_পিকআপ_ইটা | নতুন টাস্কের পিকআপ লোকেশনে গাড়ির ETA। এটি ড্রাইভিং ইটিএ। |
যানবাহন_পিকআপ_দূরত্ব_মিটার | নতুন টাস্কের গাড়ি এবং পিকআপ অবস্থানের মধ্যে দূরত্ব মিটার। |
যানবাহন_পিকআপ_সরাসরি_রেখা_দূরত্ব_মিটার | নতুন টাস্কের গাড়ি এবং পিকআপ অবস্থানের মধ্যে মিটারে সরল-রেখার দূরত্ব। |
যানবাহন_ড্রপঅফ_ইটা | নতুন টাস্কের পিকআপ লোকেশনে গাড়ির ETA-এর টাইমস্ট্যাম্প । মনে রাখবেন যে ETA হল ড্রাইভিং ETA। |
যানবাহন_ট্রিপস_ওয়েপয়েন্ট | বর্তমানে গাড়িতে নির্ধারিত সক্রিয় ট্রিপের জন্য পিকআপ এবং ড্রপ-অফ পয়েন্ট সহ অবশিষ্ট ওয়েপয়েন্টের একটি তালিকা। |
যানবাহন_ম্যাচ_টাইপ | গাড়ির ট্রিপের ধরন, হয় EXCLUSIVE, BACK_TO_BACK, CARPOOL, অথবা CARPOOL_BACK_TO_BACK৷ |
অনুসন্ধান যানবাহন উদাহরণ
নিম্নলিখিত উদাহরণ দেখায় কিভাবে SearchVehicles
API ব্যবহার করতে হয়:
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.