কোনও রুটের জন্য লোকেশন নির্দিষ্ট করা

ইউরোপীয় অর্থনৈতিক অঞ্চল (EEA)-এর ডেভেলপার

কোনও রুট গণনা করতে, আপনাকে অবশ্যই রুটের শুরু এবং গন্তব্যের লোকেশন উল্লেখ করতে হবে। আপনি রুটে এইসব লোকেশনকে ওয়েপয়েন্ট হিসেবে সংজ্ঞায়িত করেন।

শুরুর জায়গা ও গন্তব্য ছাড়াও, আপনি বিভিন্ন ধরনের ওয়েপয়েন্ট এবং রুটের জন্য কীভাবে ওয়েপয়েন্ট ম্যানেজ করতে হয় তা নির্দিষ্ট করতে পারেন। আরও তথ্য ও উদাহরণের জন্য, এইসব বিষয় দেখুন:

কোনও রুটের জন্য লোকেশন উল্লেখ করুন

আপনি ওয়েপয়েন্ট (REST) বা ওয়েপয়েন্ট (gRPC) অবজেক্ট তৈরি করে কোনও লোকেশনকে উপস্থাপন করেন। ওয়েপয়েন্ট সংজ্ঞায়, আপনি নিম্নলিখিত যেকোনও উপায়ে লোকেশন নির্দিষ্ট করতে পারবেন:

আপনি একই উপায়ে অনুরোধে সব ওয়েপয়েন্টের জন্য লোকেশন নির্দিষ্ট করতে পারেন, অথবা আপনি সেগুলি মিক্স করতে পারেন। যেমন, আপনি শুরুর ওয়েপয়েন্টের জন্য অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্ক এবং গন্তব্যের ওয়েপয়েন্টের জন্য প্লেস আইডি ব্যবহার করতে পারেন।

দক্ষতা ও নির্ভুলতার জন্য, অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্ক বা ঠিকানা স্ট্রিংয়ের পরিবর্তে প্লেস আইডি ব্যবহার করুন। প্লেস আইডি অনন্যভাবে স্পষ্ট এবং অ্যাক্সেস পয়েন্ট ও ট্রাফিক ভেরিয়েবলের মতো রাউটিংয়ের জন্য জিওকোডিং সুবিধা প্রদান করে। অন্য কোনও উপায়ে লোকেশন উল্লেখ করার ফলে যেসব পরিস্থিতি তৈরি হতে পারে, সেগুলি এড়াতে এগুলি সাহায্য করে:

  • অক্ষাংশ/দ্রাঘিমাংশ কোঅর্ডিনেট ব্যবহার করলে, লোকেশনটি সেই কোঅর্ডিনেটের সবচেয়ে কাছের রাস্তায় স্ন্যাপ করা হতে পারে - যা প্রপার্টিতে অ্যাক্সেস পয়েন্ট নাও হতে পারে, অথবা এমন রাস্তা হতে পারে যা দ্রুত বা নিরাপদে গন্তব্যে পৌঁছাতে সাহায্য করে না।
  • রুট গণনা করার আগে, ঠিকানা স্ট্রিং প্রথমে Routes API দ্বারা জিওকোড করা আবশ্যক যাতে সেগুলিকে অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্কে রূপান্তর করা যায়। এই কনভার্সন পারফর্ম্যান্সকে প্রভাবিত করতে পারে।

প্লেস আইডি হিসেবে লোকেশন উল্লেখ করুন

কোনও ওয়েপয়েন্টের লোকেশন নির্দিষ্ট করতে আপনি প্লেস আইডি ব্যবহার করতে পারেন। অক্ষাংশ ও দ্রাঘিমাংশের স্থানাঙ্ক রাস্তার সাথে স্ন্যাপ করা থাকে বলে, কিছু পরিস্থিতিতে আপনি দেখতে পাবেন যে প্লেস আইডি আরও ভালো ফলাফল প্রদান করে।

Geocoding API এবং Places API (নতুন) (অটোকমপ্লিট (নতুন) সহ) থেকে জায়গার আইডি ফিরিয়ে আনুন। প্লেস আইডি সম্পর্কে আরও জানতে, প্লেস আইডি ওভারভিউ দেখুন।

নিম্নলিখিত উদাহরণে placeId প্রপার্টি ব্যবহার করে origin এবং destination-এর জন্য প্লেস আইডি পাস করা হয়েছে:

{
  "origin":{
    "placeId": "ChIJayOTViHY5okRRoq2kGnGg8o"
  },
  "destination":{
    "placeId": "ChIJTYKK2G3X5okRgP7BZvPQ2FU"
  },
  ...
}

অক্ষাংশ ও দ্রাঘিমাংশ স্থানাঙ্ক হিসেবে কোনও লোকেশন উল্লেখ করা

ওয়েপয়েন্টে লোকেশন নির্ধারণ করতে, অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্ক ব্যবহার করে লোকেশন (REST) অথবা লোকেশন (gRPC) নির্দিষ্ট করুন।

যেমন, latitude এবং longitude কোঅর্ডিনেট ব্যবহার করে origin এবং destination রুটের জন্য একটি ওয়েপয়েন্ট নির্দিষ্ট করুন:

{
  "origin":{
    "location":{
      "latLng":{
        "latitude": 37.419734,
        "longitude": -122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude": 37.417670,
        "longitude": -122.079595
      }
    }
  },
...
}

ঠিকানা স্ট্রিং হিসেবে লোকেশন উল্লেখ করুন

ঠিকানার স্ট্রিং হল আক্ষরিক ঠিকানা যা একটি স্ট্রিং দ্বারা উপস্থাপিত হয় (যেমন "১৬০০ অ্যাম্ফিথিয়েটার পার্কওয়ে, মাউন্টেন ভিউ, CA")। জিওকোডিং হল এমন একটি প্রসেস যার মাধ্যমে কোনও ঠিকানার স্ট্রিংকে অক্ষাংশ ও দ্রাঘিমাংশ কোঅর্ডিনেটে (যেমন অক্ষাংশ ৩৭.৪২৩০২১ এবং দ্রাঘিমাংশ -১২২.০৮৩৭৩৯) পরিবর্তন করা হয়।

আপনি যখন কোনও ওয়েপয়েন্টের লোকেশন হিসেবে অ্যাড্রেস স্ট্রিং পাস করেন, তখন Routes API অভ্যন্তরীণভাবে স্ট্রিংটিকে জিওকোড করে অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্কে রূপান্তর করে।

যেমন, কোনও রুট গণনা করতে, আপনি ঠিকানা স্ট্রিং ব্যবহার করে রুট origin এবং destination-এর জন্য একটি ওয়েপয়েন্ট নির্দিষ্ট করেন:

{
  "origin":{
    "address": "1600 Amphitheatre Parkway, Mountain View, CA"
  },
  "destination":{
    "address": "450 Serra Mall, Stanford, CA 94305, USA"
  },
  ...
}

এই উদাহরণে, Routes API দুটি ঠিকানাকেই জিওকোড করে যাতে সেগুলিকে অক্ষাংশ ও দ্রাঘিমাংশ কোঅর্ডিনেটে কনভার্ট করা যায়।

ঠিকানার ভ্যালু অস্পষ্ট হলে, Routes API একই ধরনের ঠিকানা থেকে অস্পষ্টতা দূর করতে সার্চ করতে পারে। যেমন, "১ম স্ট্রিট" সম্পূর্ণ ভ্যালু হতে পারে অথবা "১ম স্ট্রিট NE" বা "১ম স্ট্রিট SE"-এর জন্য আংশিক ভ্যালু হতে পারে। এই ফলাফল Geocoding API-এর মাধ্যমে পাওয়া ফলাফলের থেকে আলাদা হতে পারে। আপনি প্লেস আইডি ব্যবহার করে সম্ভাব্য ভুল ব্যাখ্যা এড়াতে পারেন।

ঠিকানার জন্য অঞ্চল সেট করুন

আপনি যদি কোনও ওয়েপয়েন্টের লোকেশন হিসেবে অসম্পূর্ণ অ্যাড্রেস স্ট্রিং পাস করেন, তাহলে API ভুল জিওকোড করা অক্ষাংশ/দ্রাঘিমাংশ কোঅর্ডিনেট ব্যবহার করতে পারে। যেমন, আপনি "টলেডো" থেকে "মাদ্রিদ" পর্যন্ত ড্রাইভিং রুটের জন্য অনুরোধ করেছেন:

{
  "origin":{
    "address": "Toledo"
  },
  "destination":{
    "address": "Madrid"
  },
  "travelMode": "DRIVE"
}

এই উদাহরণে, "টলেডো" বলতে মার্কিন যুক্তরাষ্ট্রের ওহাইও রাজ্যের একটি শহরকে বোঝানো হয়েছে, স্পেনের শহরকে নয়। তাই, অনুরোধের উত্তরে একটি খালি অ্যারে দেখানো হয়, যার অর্থ হল কোনও রুট নেই:

{
  []
}

regionCode প্যারামিটার অন্তর্ভুক্ত করে আপনি API কনফিগার করতে পারেন যাতে কোনও নির্দিষ্ট অঞ্চলের জন্য ফলাফল দেখানো হয়। এই প্যারামিটারটি ccTLD ("টপ-লেভেল ডোমেন") দুটি অক্ষরের মান হিসেবে অঞ্চলের কোড নির্দিষ্ট করে। বেশিরভাগ ccTLD কোড ISO 3166-1 কোডের মতোই, তবে কিছু ব্যতিক্রম আছে। যেমন, যুক্তরাজ্যের ccTLD হল "uk" (.co.uk) এবং এর ISO 3166-1 কোড হল "gb" (টেকনিক্যালি "The United Kingdom of Great Britain and Northern Ireland" এন্টিটির জন্য)।

"Toledo" থেকে "Madrid" পর্যন্ত দিকনির্দেশের অনুরোধে regionCode প্যারামিটার অন্তর্ভুক্ত থাকলে তা সঠিক ফলাফল দেখায় কারণ "Toledo" স্পেনের একটি শহর হিসেবে ব্যাখ্যা করা হয়:

{
  "origin":{
    "address": "Toledo"
  },
  "destination":{
    "address": "Madrid"
  },
  "travelMode": "DRIVE",
  "regionCode": "es"
}

উত্তরে এখন টোলেডো, স্পেন থেকে মাদ্রিদ, স্পেন পর্যন্ত রুট গণনা করা হয়েছে:

{
  "routes": [
    {
      "distanceMeters": 75330,
      "duration": "4137s",
      ...
    }
  ]
}

নেভিগেশন পয়েন্ট টোকেন হল একটি স্ট্রিং যা কোনও লোকেশন এবং অতিরিক্ত রুট প্রসঙ্গ এনকোড করে। নেভিগেশন পয়েন্ট টোকেন প্রবেশপথ, লোডিং ডক বা নির্দিষ্ট পিক-আপ এলাকার কাছাকাছি নির্দিষ্ট অ্যাক্সেস পয়েন্টে সুনির্দিষ্ট রাউটিং প্রদান করতে পারে। খাবার ডেলিভারি বা রাইড শেয়ারের মতো ক্ষেত্রে এটি উপযোগী, যেখানে পিক-আপ বা ড্রপ-অফ পয়েন্ট অস্পষ্ট হতে পারে।

Geocoding API-এর Destinations মেথড কল করে আপনি নেভিগেশন পয়েন্ট টোকেন পেতে পারেন।

নেভিগেশন পয়েন্ট টোকেন নির্দিষ্ট করতে:

  1. Geocoding API-এর SearchDestinations পদ্ধতি থেকে navigationPointToken পান। আরও তথ্যের জন্য Geocoding API ডকুমেন্টেশন দেখুন।
  2. navigationPointToken-এ পাস করে একটি ওয়েপয়েন্ট তৈরি করুন।

নিম্নলিখিত উদাহরণে origin এবং destination দুটির জন্যই নেভিগেশন পয়েন্ট টোকেন পাস করতে navigation_point_token প্রপার্টি ব্যবহার করা হয়:

{
  "origin":{
    "navigation_point_token": "ENCODED_NAVIGATION_POINT_TOKEN_FOR_ORIGIN"
  },
  "destination":{
    "navigation_point_token": "ENCODED_NAVIGATION_POINT_TOKEN_FOR_DESTINATION"
  },
  ...
}

Plus Code হিসেবে কোনও লোকেশন উল্লেখ করুন

অনেকেরই সঠিক ঠিকানা নেই, যার ফলে তাদের ডেলিভারি পেতে সমস্যা হতে পারে। অথবা, কোনও ঠিকানায় বসবাসকারী ব্যক্তি আরও নির্দিষ্ট লোকেশনে ডেলিভারি নিতে পছন্দ করতে পারেন, যেমন, পিছনের প্রবেশদ্বার বা লোডিং ডক।

Plus Code হল এমন লোকজন বা জায়গার রাস্তার ঠিকানা যাদের কোনও আসল ঠিকানা নেই। রাস্তার নাম ও নম্বর সহ ঠিকানার পরিবর্তে, Plus Code অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্কের উপর ভিত্তি করে তৈরি হয় এবং সংখ্যা ও অক্ষর হিসেবে দেখানো হয়।

Google Plus Codes তৈরি করেছে যাতে প্রত্যেকে এবং সবকিছুর জন্য ঠিকানা ব্যবহার করা যায়। Plus Code হল একটি এনকোড করা লোকেশন রেফারেন্স, যা অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্ক থেকে প্রাপ্ত, যা একটি এলাকাকে উপস্থাপন করে: ডিগ্রির ১/৮০০০তম অংশ থেকে ডিগ্রির ১/৮০০০তম অংশ (নিরক্ষরেখায় প্রায় ১৪মি x ১৪মি) বা তার চেয়ে ছোট। যেসব জায়গায় রাস্তার ঠিকানা নেই অথবা বিল্ডিংয়ের নম্বর বা রাস্তার নাম নেই, সেখানে রাস্তার ঠিকানার পরিবর্তে আপনি Plus Code ব্যবহার করতে পারেন।

Plus Code অবশ্যই গ্লোবাল কোড বা কম্পাউন্ড কোড হিসেবে ফর্ম্যাট করতে হবে:

  • গ্লোবাল কোড ৪ অক্ষরের এলাকার কোড এবং ৬ অক্ষর বা তার বেশি দৈর্ঘ্যের স্থানীয় কোড নিয়ে গঠিত।

    যেমন, "১৬০০ অ্যাম্ফিথিয়েটার পার্কওয়ে, মাউন্টেন ভিউ, ক্যালিফোর্নিয়া" ঠিকানার জন্য গ্লোবাল কোড হল "849V" এবং লোকাল কোড হল "CWC8+R9"। তারপর আপনি ১০ অক্ষরের সম্পূর্ণ Plus Code ব্যবহার করে লোকেশন ভ্যালু "849VCWC8+R9" হিসেবে উল্লেখ করেন।

  • কম্পাউন্ড কোড হল ৬টি অক্ষর বা তার বেশি দৈর্ঘ্যের লোকাল কোড যা একটি নির্দিষ্ট লোকেশনের সাথে যুক্ত থাকে।

    যেমন, "450 Serra Mall, Stanford, CA 94305, USA" ঠিকানার স্থানীয় কোড হল "CRHJ+C3"। একটি কম্পাউন্ড ঠিকানার জন্য, স্থানীয় কোডটি শহর, রাজ্য, পিন কোড এবং দেশের সাথে একত্রিত করুন ঠিকানার অংশ "CRHJ+C3 Stanford, CA 94305, USA" ফর্ম্যাটে।

    যেমন, Plus Code ব্যবহার করে origin এবং destination রুটের জন্য ওয়েপয়েন্ট নির্দিষ্ট করে রুট গণনা করুন:

    {
      "origin":{
        "address": "849VCWC8+R9"
      },
      "destination":{
        "address": "CRHJ+C3 Stanford, CA 94305, USA"
      },
      "travelMode": "DRIVE"
    }

Plus Code, Google Maps Platform API-তে কাজ করে, যার মধ্যে রয়েছে অটোকমপ্লিট (নতুন), জায়গার বিবরণ (নতুন) এবং Geocoding API। যেমন, আপনি Geocoding API ব্যবহার করে অক্ষাংশ/দ্রাঘিমাংশ স্থানাঙ্ক দ্বারা নির্দিষ্ট করা কোনও লোকেশন রিভার্স জিওকোড করে লোকেশনটির Plus Code নির্ধারণ করতে পারেন।