ফ্লিট ইঞ্জিনে যানবাহন কীভাবে কাজ করে সে সম্পর্কে সাধারণ তথ্যের জন্য, ফ্লিট ইঞ্জিন এসেনশিয়াল সেকশনের নিম্নলিখিত গাইডগুলি দেখুন:
এই বিভাগের ডকুমেন্টেশনে ফ্লিট ইঞ্জিনে কীভাবে যানবাহন তৈরি এবং পরিচালনা করতে হয় তা বর্ণনা করা হয়েছে। আপনার বাস্তব কার্যক্রমের যানবাহনগুলোর অনুরূপ করে ফ্লিট ইঞ্জিন সার্ভার পরিবেশে যানবাহন তৈরি করতে হয়। আপনার ফ্লিট ইঞ্জিনের যানবাহনগুলো অবশ্যই আপনার ব্যাকএন্ড সিস্টেমের যানবাহনগুলোর সাথেও সামঞ্জস্যপূর্ণ হতে হবে, যা আপনি যানবাহন বরাদ্দ এবং রুটিংয়ের জন্য ব্যবহার করেন।
gRPC অথবা REST ব্যবহার করে একটি যানবাহন রিসোর্স তৈরি করতে একটি create মেথড ব্যবহার করা হয়। সরলতার জন্য এই নির্দেশিকায় ফিল্ডের নামগুলোতে gRPC নোটেশন ব্যবহার করা হয়েছে।
চাহিদা অনুযায়ী ভ্রমণ
-
CreateVehicleRequest(gRPC) -
providers.vehicle.create(REST) -
Vehicleসম্পদ ( REST , gRPC )
নির্ধারিত কাজ
-
CreateDeliveryVehicleRequest(gRPC) -
providers.deliveryVehicles.create(REST) -
DeliveryVehicle( REST , gRPC )
গাড়ির অনুরোধ
অন-ডিমান্ড এবং নির্ধারিত উভয় ধরনের টাস্কের জন্য, আপনাকে নিম্নলিখিত ফিল্ডগুলোসহ একটি অনুরোধ বার্তা জারি করে একটি যানবাহন তৈরি ও আপডেট করতে হয়:
- প্যারেন্ট : আপনার গুগল ক্লাউড প্রজেক্ট আইডির সাথে যুক্ত একটি স্ট্রিং, যা ভেহিকেল ইনস্ট্যান্সের নেম ফিল্ডটি পূরণ করতে ব্যবহৃত হয়।
গাড়ির আইডি : একটি অনন্য স্ট্রিং যা গাড়ির
nameক্ষেত্রটি পূরণ করতে ব্যবহৃত হয়।প্রয়োজনীয় ফিল্ডসহ একটি গাড়ির ইনস্ট্যান্স । এই ফিল্ডগুলো আপনার ব্যবহৃত ফ্লিট ইঞ্জিন ক্যাপাবিলিটির ওপর নির্ভর করে।
অনুরোধের প্রকৃতির ওপর নির্ভর করে মূল অংশে থাকা তথ্য ভিন্ন হয়। সেই বিস্তারিত বিবরণ সংশ্লিষ্ট নির্দেশিকায় দেখুন।
প্রমাণীকরণ এবং অনুমোদন টোকেন
ফ্লিট ইঞ্জিনে করা অনুরোধের সাথে অবশ্যই সঠিক অ্যাক্সেস ক্রেডেনশিয়াল প্রদান করতে হবে। এই গাইডের উদাহরণগুলিতে নিম্নলিখিত বিষয়গুলি ধরে নেওয়া হয়েছে:
- gRPC উদাহরণগুলিতে জাভার Authorization লাইব্রেরির ব্যবহার ধরে নেওয়া হয়েছে।
- REST উদাহরণগুলিতে একটি HTTP অনুরোধ হেডার দেখানো হয়েছে, যেটিতে অবশ্যই
Authorizationফিল্ডটি থাকতে হবে এবং এর ভ্যালু হবেBearer <token>যেখানে<token>হলো আপনার ইস্যু করা একটি JSON ওয়েব টোকেন ।
আরও বিস্তারিত জানতে, ফ্লিট ইঞ্জিন সেট আপ গাইডগুলি দেখুন।
যানবাহন সম্পদ ক্ষেত্র
একটি যানবাহন রিসোর্সে নিম্নলিখিত ধরণের ফিল্ডগুলো থাকে:
- শুধুমাত্র আউটপুট ফিল্ড । যে ফিল্ডগুলো সার্ভিস দ্বারা অন্য কোনো মেথডের আউটপুট হিসেবে সেট করা হয় এবং সরাসরি সেট করা যায় না । এই ধরনের একটি গুরুত্বপূর্ণ ফিল্ড হলো
nameফিল্ড। ইউজার-স্পেসিফায়েড আইডি- র জন্য গুগল এআইপি-র নির্দেশনা অনুযায়ী, ফ্লিট ইঞ্জিন গাড়িরnameফিল্ডের জন্য সরবরাহ করা যেকোনো ভ্যালু উপেক্ষা করে। আপনি যদি এই ফিল্ডগুলোতে ভ্যালু সরবরাহ করেন, তাহলে ফ্লিট ইঞ্জিন একটি এরর রিটার্ন করে। - আবশ্যক ক্ষেত্রসমূহ । অন-ডিমান্ড ট্রিপ পরিষেবাতে তৈরি যানবাহনগুলির জন্য তৈরির সময় নির্দিষ্ট কিছু ক্ষেত্র পূরণ করা আবশ্যক। নির্ধারিত কাজ পরিষেবাতে তৈরি যানবাহনগুলির জন্য কোনো আবশ্যক যানবাহন রিসোর্স ক্ষেত্র নেই।
- ঐচ্ছিক ক্ষেত্রসমূহ । উভয় পরিষেবারই এমন কিছু ক্ষেত্র রয়েছে যা আপনি তৈরির সময় বা পরবর্তীতে সেট করতে পারেন। আপনি যে পরিষেবাটি ব্যবহার করেন, তার সংশ্লিষ্ট রেফারেন্স গাইডে এগুলি খুঁজে পাওয়া যাবে।
গাড়ির নাম (শুধুমাত্র আউটপুট)
অন-ডিমান্ড ট্রিপ এবং নির্ধারিত টাস্ক সার্ভিসের জন্য name ফিল্ডটি হুবহু একই। আপনি যখন যানবাহন তৈরি করেন, তখন আপনার সেট করা দুটি ফিল্ডের উপর ভিত্তি করে ফ্লিট ইঞ্জিন এই ফিল্ডটি নির্ধারণ করে দেয়:
প্যারেন্ট : আপনার গুগল ক্লাউড প্রজেক্ট আইডির সাথে যুক্ত একটি স্ট্রিং, যা
providers/{provider}ফর্মের হয়ে থাকে, যেখানে{provider}হলো আপনার ক্লাউড প্রজেক্টের আইডি। একটি নির্দিষ্ট প্রজেক্টের জন্য আপনার তৈরি করা প্রতিটি গাড়ির একই প্যারেন্ট পাথ থাকবে।আপনি এখানে যে ক্লাউড প্রজেক্টটির উল্লেখ করছেন, সেটিতে আপনার ব্যবহৃত সার্ভিসের জন্য ফ্লিট ইঞ্জিন সার্ভিস অ্যাকাউন্ট রোলগুলোও অবশ্যই থাকতে হবে। সেই সার্ভিস অ্যাকাউন্টগুলোর তালিকার জন্য সার্ভিস অ্যাকাউন্টস দেখুন। ফ্লিট ইঞ্জিন একাধিক গুগল ক্লাউড প্রজেক্ট থেকে অ্যাক্সেস সমর্থন করে না।
যানবাহনটির আইডি , যা আপনার ফ্লিটের সমস্ত যানবাহনের মধ্যে অনন্য এবং একটি বৈধ ইউনিকোড স্ট্রিং হতে হবে। এটি হলো যানবাহনটির রিসোর্স আইডি । অন-ডিমান্ড ট্রিপ এবং নির্ধারিত স্টপ উভয়ই একটি ট্রিপ বা কাজকে সেটি সম্পন্নকারী যানবাহনের সাথে যুক্ত করতে এটি ব্যবহার করে।
গুগল ক্লাউড-ভিত্তিক পরিষেবাগুলিতে, সমস্ত API-কে অবশ্যই রিসোর্সগুলিকে স্ট্রিং হিসাবে উপস্থাপন করতে হবে। আরও বিস্তারিত জানার জন্য ফ্লিট ইঞ্জিনে রিসোর্স নামকরণ দেখুন।
অনন্য সত্তা শনাক্তকারী
রিসোর্স কলে ব্যবহৃত অনন্য সত্তা শনাক্তকারীগুলির বিন্যাস এবং মান ফ্লিট ইঞ্জিনের কাছে অস্বচ্ছ। নিশ্চিত করুন যে শনাক্তকারীটিতে চালকের ফোন নম্বরের মতো কোনো ব্যক্তিগতভাবে শনাক্তযোগ্য তথ্য (PII) নেই।
যানবাহন পুনঃব্যবহার
একটি যানবাহন একটি নির্দিষ্ট ভ্রমণসূচীর সমস্ত স্টপ সম্পন্ন করার পর, এটি ফ্লিট ইঞ্জিনে ৭ দিনের জন্য পুনরায় ব্যবহারের জন্য উপলব্ধ থাকে, যার অর্থ হলো আপনি নতুন একটি তৈরি না করেই পরবর্তী কার্যদিবসগুলিতে একটি যানবাহন পুনরায় ব্যবহার করতে পারেন। প্রতিবার আপনি একটি যানবাহন পুনরায় ব্যবহার করলে, ফ্লিট ইঞ্জিন সেটির প্রাপ্যতা রিসেট করে দেয়, এবং তখন ৭-দিনের কাউন্টডাউনটি নতুন করে শুরু হয়।
ফ্লিট ইঞ্জিনে একটি যানবাহনকে উপলব্ধ রাখার জন্য প্রস্তাবিত পদ্ধতি হলো নিয়মিত বিরতিতে এর অবস্থান আপডেট করা। Vehicle এনটিটির বেশিরভাগ অন্যান্য ফিল্ডের আপডেটও এর মেয়াদ বাড়িয়ে দেবে, তবে শর্ত হলো নতুন ফিল্ডের মানটি বিদ্যমান মান থেকে ভিন্ন হতে হবে।
দ্রষ্টব্য: Vehicle এনটিটির device_settings মতো কিছু ফিল্ড সম্পূর্ণরূপে ডিবাগ তথ্য, যা Fleet Engine দ্বারা সংরক্ষিত হয় না। এগুলো আপডেট করলে Vehicle এনটিটির আয়ুষ্কাল বাড়ে না।
উন্নত সিস্টেম অ্যানালিটিক্সের জন্য, প্রতিদিন একই ড্রাইভার-গাড়ির আইডি জোড়া পুনরায় ব্যবহার করাই শ্রেয়। পূর্ববর্তী নির্ধারিত স্টপ বা অন-ডিমান্ড ট্রিপের জন্য ড্রাইভারের সাথে যুক্ত একই গাড়ির আইডি ব্যবহার করে এটি করুন।