এই বিভাগে দেখানো হয়েছে কিভাবে ট্রিপের জন্য গাড়ি প্রস্তুত করতে হয়। আপনার ব্যাকএন্ডটি একটি ট্রিপের সাথে একটি গাড়ি মেলানোর আগে আপনাকে নিম্নলিখিত প্রতিটি ধাপ অবশ্যই সম্পন্ন করতে হবে।
শ্রোতা সেট আপ করুন
যেহেতু ড্রাইভার SDK ব্যাকগ্রাউন্ডে কাজ করে, তাই ত্রুটি, সতর্কতা বা ডিবাগ বার্তার মতো নির্দিষ্ট ঘটনা ঘটলে বিজ্ঞপ্তিগুলি ট্রিগার করতে DriverStatusListener ব্যবহার করুন। ত্রুটিগুলি ক্ষণস্থায়ী প্রকৃতির হতে পারে (যেমন BACKEND_CONNECTIVITY_ERROR ), অথবা এর ফলে অবস্থান আপডেট স্থায়ীভাবে বন্ধ হয়ে যেতে পারে। উদাহরণস্বরূপ, যদি আপনি একটি VEHICLE_NOT_FOUND ত্রুটি পান, তবে এটি একটি কনফিগারেশন ত্রুটি নির্দেশ করে।
নিম্নলিখিত উদাহরণটি একটি DriverStatusListener বাস্তবায়ন দেখায়:
class MyStatusListener implements DriverStatusListener {
/** Called when background status is updated, during actions such as location reporting. */
@Override
public void updateStatus(
StatusLevel statusLevel, StatusCode statusCode, String statusMsg, @Nullable Throwable cause) {
// Existing implementation
if (cause != null && cause instanceof StatusRuntimeException) {
if (Status.NOT_FOUND.getCode().equals(cause.getStatus().getCode())) {
// NOT_FOUND gRPC exception thrown by Fleet Engine.
}
}
}
}
DriverContextBuilder.setDriverStatusListener(new MyStatusListener());
অবস্থান আপডেট সক্ষম করুন
শ্রোতা সেট আপ করার পরে, নিম্নরূপ অবস্থান আপডেট সক্ষম করুন:
জাভা
RidesharingVehicleReporter reporter = ...;
reporter.enableLocationTracking();
কোটলিন
val reporter = ...
reporter.enableLocationTracking()
আপডেট ব্যবধান সেট করুন
ডিফল্টরূপে, গাড়ির অবস্থা ONLINE থাকলে Driver SDK ১০ সেকেন্ডের ব্যবধানে অবস্থান আপডেট পাঠায়। আপনি reporter.setLocationReportingInterval(long, TimeUnit) ব্যবহার করে এই ব্যবধান পরিবর্তন করতে পারেন। সর্বনিম্ন সমর্থিত আপডেট ব্যবধান ৫ সেকেন্ড। আরও ঘন ঘন আপডেটের ফলে ধীরগতির অনুরোধ এবং ত্রুটি দেখা দিতে পারে।
গাড়ির অবস্থা অনলাইনে সেট করুন
যখন আপনি লোকেশন আপডেট চালু করেন, তখন আপনি গাড়ির অবস্থা ONLINE সেট করতে পারেন যাতে Fleet Engine-এ SearchVehicles প্রশ্নের জন্য গাড়িটি উপলব্ধ থাকে। ড্রাইভার SDK লোকেশন আপডেটের সাথে আপডেট হওয়া গাড়ির অবস্থা পাঠায়।
আপনি সরাসরি ড্রাইভার SDK অথবা ফ্লিট ইঞ্জিন সার্ভারে গাড়ির অবস্থা সেট করতে পারেন। আরও তথ্যের জন্য, Update a Vehicle দেখুন।
নিম্নলিখিত উদাহরণগুলি দেখায় যে কীভাবে ড্রাইভার SDK-তে গাড়ির অবস্থা অনলাইনে সেট করতে হয়:
জাভা
RidesharingVehicleReporter reporter = ...;
reporter.enableLocationTracking();
reporter.setVehicleState(VehicleState.ONLINE);
কোটলিন
val reporter = ...
reporter.enableLocationTracking()
reporter.setVehicleState(VehicleState.ONLINE)
গাড়ির অবস্থা আপডেট করার সময় যে কোনও ত্রুটি ঘটলে StatusListener তাও রিপোর্ট করে।