সমস্যা সমাধান

ত্রুটি

একটি ত্রুটির ক্ষেত্রে, একটি স্ট্যান্ডার্ড ফরম্যাট ত্রুটি প্রতিক্রিয়া বডি ফেরত দেওয়া হবে এবং HTTP স্ট্যাটাস কোড একটি ত্রুটি স্থিতিতে সেট করা হবে।

প্রতিক্রিয়াটিতে নিম্নলিখিত কীগুলির সাথে একটি একক error বস্তু রয়েছে:

  • code : এটি প্রতিক্রিয়ার HTTP অবস্থার মতোই।
  • message : ত্রুটির একটি সংক্ষিপ্ত বিবরণ।
  • status : একটি স্ট্যাটাস কোড যা ত্রুটির প্রকৃতি নির্দেশ করে।

উদাহরণস্বরূপ, একটি অবৈধ placeId প্যারামিটার পাঠানো নিম্নলিখিত ত্রুটিটি ফিরিয়ে দেবে:

{
  "error": {
    "code": 400,
    "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"",
    "status": "INVALID_ARGUMENT"
  }
}

সম্ভাব্য ত্রুটির মধ্যে রয়েছে:

কোড স্ট্যাটাস বার্তা সমস্যা সমাধান
400 INVALID_ARGUMENT আপনার দেওয়া কীটি অবৈধ৷ আপনার API কী বৈধ নয় বা অনুরোধে অন্তর্ভুক্ত করা হয়নি। অনুগ্রহ করে নিশ্চিত করুন যে আপনি সম্পূর্ণ কীটি অন্তর্ভুক্ত করেছেন এবং আপনি এই কীটির জন্য API সক্ষম করেছেন৷
400 INVALID_ARGUMENT "\"পথ\" প্যারামিটারে একটি অবৈধ মান রয়েছে: ☃" আপনার অনুরোধে অবৈধ আর্গুমেন্ট রয়েছে। এই ত্রুটির সবচেয়ে সম্ভাব্য কারণ হল:
  • আপনার path প্যারামিটারের সাথে একটি সমস্যা।
    অনুগ্রহ করে নিশ্চিত করুন যে আপনার কমপক্ষে 1, এবং 100 এর কম পয়েন্ট আছে। প্রতিটি পয়েন্ট একটি কমা দ্বারা পৃথক করা সংখ্যার জোড়া হওয়া উচিত, যেমন: 48.409114,-123.369158 । পয়েন্ট একটি পাইপ দ্বারা পৃথক করা উচিত: '|'.
  • আপনার অনুরোধে একটি অবৈধ placeId অন্তর্ভুক্ত ছিল।
  • আপনার অনুরোধে placeId এবং একটি path উভয়ই অন্তর্ভুক্ত ছিল। প্রতিটি অনুরোধের জন্য শুধুমাত্র এই পরামিতিগুলির একটি নির্দিষ্ট করা যেতে পারে।

এই ত্রুটিটি ফেরত দেওয়া হবে না যদি এমন একটি রাস্তার জন্য একটি placeId পাস করা হয় যা আর বিদ্যমান নেই, বা এমন একটি জায়গা যা রাস্তা নয়৷

403 PERMISSION_DENIED অনিবন্ধিত অনুরোধ ব্লক করা হয়েছে. অনুগ্রহ করে Google Developers Console ব্যবহার করে সাইন আপ করুন৷ নিম্নলিখিত এক বা একাধিক কারণে অনুরোধটি প্রত্যাখ্যান করা হয়েছে:
  • API কী অনুপস্থিত বা অবৈধ।
  • আপনার অ্যাকাউন্টে বিলিং সক্ষম করা হয়নি।
  • একটি স্ব-আরোপিত ব্যবহারের সীমা অতিক্রম করা হয়েছে৷
  • প্রদত্ত অর্থপ্রদানের পদ্ধতিটি আর বৈধ নয় (উদাহরণস্বরূপ, একটি ক্রেডিট কার্ডের মেয়াদ শেষ হয়ে গেছে)।

Google মানচিত্র প্ল্যাটফর্ম পণ্যগুলি ব্যবহার করার জন্য, আপনার অ্যাকাউন্টে বিলিং সক্ষম করতে হবে এবং সমস্ত অনুরোধে একটি বৈধ API কী অন্তর্ভুক্ত করতে হবে৷ এটি ঠিক করতে, নিম্নলিখিত পদক্ষেপগুলি নিন:

404 NOT_FOUND এই পরিষেবার জন্য HTTPS প্রয়োজন৷ নিশ্চিত করুন যে আপনি https ://roads.googleapis.com/ এ অনুরোধ পাঠাচ্ছেন এবং http ://roads.googleapis.com/ এ নয়।
429 RESOURCE_EXHAUSTED প্রকল্পের অনুরোধের সীমা পৌঁছে যাওয়ার কারণে অনুরোধটি থামানো হয়েছে। আপনি Google ক্লাউড প্ল্যাটফর্ম কনসোলে কনফিগার করা অনুরোধের সীমা অতিক্রম করেছেন৷ এই সীমাটি সাধারণত প্রতিদিন অনুরোধ, প্রতি 100 সেকেন্ডে অনুরোধ এবং প্রতি ব্যবহারকারী প্রতি 100 সেকেন্ডে অনুরোধ হিসাবে সেট করা হয়। এই সীমাটি কনফিগার করা উচিত যাতে ব্যবহারকারীদের একটি একক বা ছোট গোষ্ঠীকে আপনার প্রতিদিনের কোটা শেষ করা থেকে আটকাতে, যদিও এখনও সমস্ত ব্যবহারকারীকে যুক্তিসঙ্গত অ্যাক্সেসের অনুমতি দেয়। এই সীমাগুলি কনফিগার করতে ক্যাপিং API ব্যবহার দেখুন।

সূচকীয় ব্যাকঅফ

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

সমস্যা নিবারণ FAQ

বাস্তবায়ন সমস্যাসমুহ

কোন ফ্রিকোয়েন্সিতে আমার গাড়ির অবস্থানের নমুনা নেওয়া উচিত?
উচ্চ মানের স্ন্যাপ-টু-রোড ফলাফলের জন্য প্রতি 1-10 সেকেন্ডে সুপারিশ করা হয়।
প্রতি ক্যোয়ারীতে আমি কতগুলো পয়েন্ট পাঠাতে পারি তার কি কোনো সীমা আছে?
হ্যাঁ, একটি প্রশ্নে সর্বাধিক 100 পয়েন্ট থাকতে পারে।
আমার স্ন্যাপ করা অক্ষাংশ/দ্রাঘিমাংশ জোড়া সংরক্ষণ করতে আমি কোন স্তরের নির্ভুলতা ব্যবহার করব?
স্ন্যাপ করা পাথগুলি সমস্ত জুম স্তরে রাস্তাগুলি অনুসরণ করে তা নিশ্চিত করতে, এমনকি সর্বাধিক জুম স্তরেও, আপনার স্ন্যাপ করা অক্ষাংশ/দ্রাঘিমাংশের জোড়াগুলিকে 7 দশমিক সূক্ষ্ম স্থানে সংরক্ষণ করা উচিত৷
স্ন্যাপড পাথগুলি প্রদর্শন করতে আমি কি এনকোডেড পলিলাইন ব্যবহার করতে পারি?
এনকোড করা পলিলাইনগুলি শুধুমাত্র 5 দশমিক স্থানের নির্ভুলতার জন্য নির্দিষ্ট করা হয়েছে, যার ফলে প্রায় 2 মিটারের ত্রুটি দেখা দেয়। এনকোড করা পলিলাইনগুলি এইভাবে উপযুক্ত নয় যদি আপনি চান আপনার স্ন্যাপ করা পাথগুলি উচ্চ জুম স্তরে রাস্তা অনুসরণ করতে।

সাধারণ সমস্যা

কিছু পয়েন্ট স্ন্যাপ করা হচ্ছে না, অথবা আমার স্ন্যাপ করা পাথগুলিতে ফাঁক আছে। আমি কিভাবে এটি সংশোধন করতে পারি?
  • আপনি যদি নির্দিষ্ট সময়ের ব্যবধানে আপনার পয়েন্টের নমুনা নিচ্ছেন, তবে নিশ্চিত করুন যে আপনার পয়েন্টগুলি ছোট বিরতিতে (প্রতি 1-10 সেকেন্ডে) নমুনা করা হয়েছে। যদি একটি দীর্ঘ বিরতি ব্যবহার করা হয় (উদাহরণস্বরূপ 60 সেকেন্ড), স্ন্যাপ-টু-রোড অ্যালগরিদম পর্যাপ্ত নির্ভুলতার সাথে ভ্রমণ করা রাস্তাগুলি নির্ধারণ করতে সক্ষম নাও হতে পারে।
  • আপনি যদি পয়েন্ট তৈরি করতে ম্যাপে ম্যানুয়ালি ক্লিক করেন, তাহলে কিছু পয়েন্ট বা স্পারস পয়েন্ট সহ পাথ তৈরি করা খুব সহজ যেগুলি স্ন্যাপিং অ্যালগরিদম ভালভাবে পরিচালনা করে না। স্ন্যাপিং অ্যালগরিদম একসাথে কাছাকাছি থাকা পয়েন্টগুলির জন্য সবচেয়ে ভাল কাজ করে। স্ন্যাপ টু রোডস ডেমো ব্যবহার করে দেখুন বা আপনার পথ পরীক্ষা করতে রোড ইন্সপেক্টর ব্যবহার করুন।
    যখন আমি জুম ইন করি তখন কেন আমার স্ন্যাপ করা পাথগুলি জ্যাগড বা রাস্তা থেকে সামান্য দূরে থাকে?
    • আপনি কি সেগুলি প্রদর্শন করার আগে স্ন্যাপ করা অক্ষাংশ/দ্রাঘিমাংশের জোড়ার নির্ভুলতা ছেঁটে ফেলছেন? স্ন্যাপ করা অক্ষাংশ/দ্রাঘিমাংশ জোড়াকে 7 দশমিকের কম বিন্দুর নির্ভুলতায় সংরক্ষণ করার ফলে যখন স্ন্যাপ করা পথ মানচিত্রে প্রদর্শিত হয় তখন নির্ভুলতা ত্রুটির কারণ হয়।
    • আপনি এনকোডেড পলিলাইন ব্যবহার করছেন? এনকোড করা পলিলাইনগুলি অক্ষাংশ/দ্রাঘিমাংশের জোড়াকে 5 দশমিক স্থানে ছেঁটে দেয়, যা বেশ কয়েকটি মিটারের ত্রুটির পরিচয় দেয়, যার ফলে লাইনগুলি উচ্চ জুম স্তরে রাস্তা থেকে ঝাঁকড়া বা সামান্য দূরে থাকে।

    যদি উপরের কোনটিই না হয়, তাহলে মানচিত্র টাইলগুলি সম্প্রতি আপডেট করা হয়েছে, যার ফলে সেগুলি স্ন্যাপিংয়ের জন্য ব্যবহৃত রাস্তার সূচীর সাথে সিঙ্কের বাইরে চলে গেছে৷ যদি আপনার কয়েকটি প্রশ্ন প্রভাবিত হয় তবে এটি সম্ভবত কারণ হতে পারে। যেহেতু Google Maps নিয়মিত আপডেট করা হয়, তাই এটি মাঝে মাঝে ঘটতে পারে, এবং আপনি যদি নিয়মিতভাবে একটি মানচিত্রে পুরানো পথগুলি দেখেন (উদাহরণস্বরূপ, বেশ কয়েক সপ্তাহ আগে যে পথগুলি স্ন্যাপ করা হয়েছিল) তা আরও প্রায়ই ঘটতে পারে৷ সর্বোত্তম ভিজ্যুয়ালাইজেশনের জন্য, মানচিত্রের টাইলস এবং স্ন্যাপিংয়ের জন্য ব্যবহৃত রাস্তার সূচীর মধ্যে অসঙ্গতিগুলি কমানোর জন্য আপনাকে মানচিত্রে দেখানোর ঠিক আগে পুরানো পথগুলিকে পুনরায় স্ন্যাপ করা উচিত৷

    রাস্তা X-এর গতিসীমা ভুলভাবে প্রদর্শনের জন্য কী হতে পারে?
    গতির সীমা বিভিন্ন উত্স থেকে আসে যা নির্ভুলতা এবং কভারেজের মধ্যে পরিবর্তিত হয়। আপনি যদি একটি প্যাটার্ন খুঁজে পান, উদাহরণস্বরূপ একটি নির্দিষ্ট রাস্তার প্রকারের জন্য গতি সীমা বা একটি নির্দিষ্ট এলাকায় ধারাবাহিকভাবে ভুল, অনুগ্রহ করে আমাদের জানাতে নিম্নলিখিত পদক্ষেপগুলি নিন:
    1. আপনার ডেস্কটপ কম্পিউটারে Google মানচিত্র খুলুন বা Android এর জন্য Google মানচিত্র অ্যাপ খুলুন৷
    2. বাম পাশের মেনু খুলুন।
    3. প্রতিক্রিয়া পাঠান নির্বাচন করুন। দ্রষ্টব্য: আপনাকে লগ ইন করতে বলা হতে পারে।
    4. মানচিত্র সম্পাদনা নির্বাচন করুন।
    5. আপনি যে রাস্তার অংশটি সম্পাদনা করতে চান সেটি নির্বাচন করুন।
    6. পরবর্তী নির্বাচন করুন।
    7. "অন্যান্য" ক্ষেত্রে, নির্দেশ করুন যে সেই রাস্তাটির গতিসীমা ভুল।
    8. জমা দিন নির্বাচন করুন।
    আপনি এখানে অন্যান্য সমস্যাগুলিও রিপোর্ট করতে পারেন (উদাহরণস্বরূপ যদি রাস্তাটির ভুল নাম থাকে, ভুলভাবে আঁকা হয়, বা বন্ধ থাকে, বা ব্যক্তিগত)।
    কেন আমার ছিন্ন করা পথ রাস্তা অনুসরণ না করে কোণে কাটছে?
    এই সমস্যাটি সংশোধন করতে, নিম্নলিখিতগুলি পরীক্ষা করুন:
    • নিশ্চিত করুন interpolate প্যারামিটার true সেট করা আছে।
    • আপনার আসল ডেটা পয়েন্টগুলি পর্যাপ্ত বিরতিতে (প্রতি 1-10 সেকেন্ডে) নমুনা করা হয়েছে তা পরীক্ষা করুন।
    গতি সীমা পরিবর্তন ছাড়া রাস্তার জন্য আমি কেন স্ন্যাপ করা পথে প্রচুর রাস্তার অংশ ফিরে পাচ্ছি?
    interpolate প্যারামিটার true সেট করা হলে, স্ন্যাপ-টু-রোড ক্যোয়ারী একটি পলিলাইন প্রদান করে যা কোণ, বক্ররেখা এবং গোলচত্বরের চারপাশে রাস্তা অনুসরণ করে। যদি রাস্তা বাঁকে যায়, রাস্তার জ্যামিতিকে ঘনিষ্ঠভাবে অনুসরণ করে এমন একটি পলিলাইন তৈরি করতে, গতিসীমা পরিবর্তন না হলেও একাধিক রাস্তার অংশগুলিকে ফেরত দেওয়া হয়।