বর্তমানে, Google মানচিত্র প্ল্যাটফর্ম দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API সমর্থন করে। নতুন রুট এপিআই-এর এই রিলিজে বিদ্যমান দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API-এর পরবর্তী প্রজন্ম, কর্মক্ষমতা অপ্টিমাইজ করা সংস্করণ রয়েছে:
- রুট গণনা করুন: ব্যাপক, বিশ্বব্যাপী রাউটিং ডেটা এবং রিয়েল-টাইম ট্র্যাফিক সহ অবস্থানগুলির মধ্যে দিকনির্দেশ গণনা করুন।
- কম্পিউট রুট ম্যাট্রিক্স : উৎপত্তি/গন্তব্য জোড়ার তালিকার জন্য দূরত্ব এবং ভ্রমণের সময় গণনা করুন।
রুট API-এ অনেকগুলি নতুন ক্ষমতা রয়েছে, যার মধ্যে রয়েছে:
-
TWO_WHEELER
রাউটিং - টোল হিসাব
- ট্রাফিক সচেতন পলিলাইন
- পলিলাইন মান নিয়ন্ত্রণ
- গুণমান লেটেন্সি নিয়ন্ত্রণ
- ফলাফল স্ট্রিমিং (শুধুমাত্র gRPC ব্যবহার করে রুট ম্যাট্রিক্স গণনা করুন)
- জিআরপিসি সমর্থন
রুট API সম্পর্কে আরও তথ্যের জন্য, রুট API দেখুন।
নতুন রুট API ব্যবহার করার জন্য নির্দেশাবলী API এবং দূরত্ব ম্যাট্রিক্স API ব্যবহার করে এমন আপনার বিদ্যমান অ্যাপগুলিকে কীভাবে স্থানান্তর করা যায় তা এই নির্দেশিকা বর্ণনা করে।
নতুন রুট API-এ কার্যকারিতা পরিবর্তন
একটি উচ্চ স্তরে, রুট API নির্দেশাবলী API এবং দূরত্ব ম্যাট্রিক্স API এ নিম্নলিখিত পরিবর্তনগুলি করে:
একক পরিষেবার অধীনে কম্পিউট রুট এবং কম্পিউট রুট ম্যাট্রিক্স একত্রিত করা যাকে রুট এপিআই বলা হয়
কম্পিউট রুট এবং কম্পিউট রুট ম্যাট্রিক্স ব্যবহার করার আগে আপনাকে API কনসোলে রুট API সক্রিয় করতে হবে। বর্তমানে, আপনি API কনসোলে পৃথক পরিষেবা হিসাবে দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API সক্ষম করেন।
আরও তথ্যের জন্য, Google API কনসোলে সেট আপ দেখুন।
নতুন রুট API HTTP POST অনুরোধ ব্যবহার করে
নতুন রুট API-এ, আপনি একটি HTTP POST অনুরোধের অংশ হিসাবে অনুরোধের বডিতে বা হেডারগুলিতে প্যারামিটারগুলি পাস করেন৷ বিপরীতে, দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API এর সাথে, আপনি একটি HTTP GET অনুরোধ ব্যবহার করে URL প্যারামিটার পাস করেন।
উদাহরণের জন্য, দেখুন:
ক্ষেত্র মাস্কিং প্রয়োজন
আপনি যখন একটি রুট গণনা করতে বা একটি রুট ম্যাট্রিক্স গণনা করার জন্য নতুন রুট এপিআই কল করেন, তখন আপনাকে অবশ্যই নির্দিষ্ট করতে হবে যে প্রতিক্রিয়াতে আপনি কোন ক্ষেত্রগুলি ফিরিয়ে দিতে চান৷ প্রত্যাবর্তিত ক্ষেত্রের কোনো ডিফল্ট তালিকা নেই। আপনি যদি এই তালিকাটি বাদ দেন, পদ্ধতিগুলি একটি ত্রুটি ফেরত দেয়।
একটি প্রতিক্রিয়া ক্ষেত্র মাস্ক তৈরি করে ক্ষেত্রের তালিকা নির্দিষ্ট করুন। তারপরে আপনি URL প্যারামিটার
$fields
বাfields
ব্যবহার করে বা HTTP/gRPC হেডারX-Goog-FieldMask
ব্যবহার করে প্রতিটি পদ্ধতিতে প্রতিক্রিয়া ক্ষেত্র মাস্ক পাস করুন।আপনি অপ্রয়োজনীয় ডেটার অনুরোধ করবেন না তা নিশ্চিত করার জন্য ফিল্ড মাস্কিং একটি ভাল ডিজাইন অনুশীলন, যা অপ্রয়োজনীয় প্রক্রিয়াকরণের সময় এবং বিলিং চার্জ এড়াতে সহায়তা করে।
আরও তথ্যের জন্য, ফিরে আসার জন্য ক্ষেত্র চয়ন করুন দেখুন।
কম্পিউট রুট ম্যাট্রিক্সের জন্য নতুন অনুরোধের সীমা
দূরত্ব ম্যাট্রিক্স এপিআই নিম্নলিখিত অনুরোধের সীমাগুলি প্রয়োগ করেছে:
- প্রতি অনুরোধে সর্বাধিক 25টি উৎস বা 25টি গন্তব্য।
- সার্ভার-সাইড অনুরোধ প্রতি সর্বোচ্চ 100টি উপাদান (উৎপত্তির সংখ্যা × গন্তব্যের সংখ্যা)।
কম্পিউট রুট ম্যাট্রিক্স নিম্নলিখিত অনুরোধের সীমা প্রয়োগ করে:
উপাদানের সংখ্যা 625 এর বেশি হতে পারে না।
আপনি যদি
TRAFFIC_AWARE_OPTIMAL
নির্দিষ্ট করেন, তাহলে উপাদানের সংখ্যা 100-এর বেশি হতে পারে না।TRAFFIC_AWARE_OPTIMAL
সম্পর্কে আরও জানতে, মান বনাম লেটেন্সি কনফিগার করুন দেখুন।একটি প্লেস আইডি ব্যবহার করে সর্বাধিক সংখ্যক ওয়েপয়েন্ট (উৎপত্তি + গন্তব্য) যা আপনি নির্দিষ্ট করতে পারেন তা হল 50৷
গুণমান বনাম লেটেন্সি কনফিগার করার জন্য নতুন বিকল্প
নতুন রুট API তিনটি রাউটিং পছন্দগুলিকে সমর্থন করে যা আপনি স্পষ্টভাবে রুটের গুণমান বনাম প্রতিক্রিয়া লেটেন্সি কনফিগার করতে ব্যবহার করতে পারেন:
TRAFFIC_UNAWARE
(ডিফল্ট) - রুট গণনা করতে গড় সময়-স্বাধীন ট্রাফিক ডেটা ব্যবহার করে, লাইভ ট্র্যাফিক ডেটা নয়, যার ফলে সর্বনিম্ন প্রতিক্রিয়ার বিলম্ব হয়৷ এই সেটিংটি যখন দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API-এ ট্র্যাফিক ব্যবহার করা হয় না তখন তার সমতুল্য৷TRAFFIC_AWARE
- কম বিলম্বের জন্য পারফরম্যান্স-অপ্টিমাইজ করা লাইভ ট্রাফিক গুণমান। এই সেটিংটি রুট API-এর জন্য নতুন এবং দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API-এ এর কোনো সমতুল্য নেই।TRAFFIC_AWARE_OPTIMAL
এর বিপরীতে, উল্লেখযোগ্যভাবে বিলম্ব কমাতে কিছু অপ্টিমাইজেশান প্রয়োগ করা হয়৷TRAFFIC_AWARE_OPTIMAL
- উচ্চ মানের, সর্বাধিক কর্মক্ষমতা অপ্টিমাইজেশান প্রয়োগ না করেই ব্যাপক ট্রাফিক ডেটা৷ এই সেটিংটি সর্বোচ্চ লেটেন্সি তৈরি করে এবং দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API-এdeparture_time
সেটিংয়ের সমতুল্য।TRAFFIC_AWARE_OPTIMAL
রাউটিং পছন্দ maps.google.com এবং Google মানচিত্র মোবাইল অ্যাপ দ্বারা ব্যবহৃত মোডের সমতুল্য৷
দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API-এ, আমরা শুধুমাত্র
TRAFFIC_AWARE_OPTIMAL
এবংTRAFFIC_UNAWARE
বিকল্পগুলির সমতুল্য প্রদান করি। আপনিdeparture_time
সেট করেছেন কিনা তার উপর ভিত্তি করে এই বিকল্পগুলি নিহিত ছিল।নিম্নলিখিত সারণী বর্তমান দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API বিকল্পগুলি এবং নতুন রুট API বিকল্পগুলির সাথে তুলনা করে:
মোড কারেন্ট রুট API মন্তব্য কোনো রিয়েল-টাইম ট্রাফিক নেই departure_time
প্রপার্টি সেট করা হয়নিTRAFFIC_UNAWARE
তিনটি মোডের দ্রুততম লেটেন্সি। লাইভ ট্রাফিক শর্ত প্রযোজ্য কোন সমতুল্য TRAFFIC_AWARE
Routes API দ্বারা নতুন মোড যোগ করা হয়েছে। এটি
TRAFFIC_UNAWARE
এর চেয়ে সামান্য বেশি বিলম্ব প্রদান করে যার অল্প খরচে ETA মানের।এটির
TRAFFIC_AWARE_OPTIMAL
এর চেয়ে অনেক কম লেটেন্সি রয়েছে৷উচ্চ মানের, ব্যাপক লাইভ ট্রাফিক ডেটা প্রয়োগ করা হয়েছে departure_time
প্রপার্টি সেটTRAFFIC_AWARE_OPTIMAL
maps.google.com এবং Google Maps মোবাইল অ্যাপ দ্বারা ব্যবহৃত মোডের সমতুল্য৷
কম্পিউট রুট ম্যাট্রিক্সের জন্য, একটি অনুরোধে উপাদানের সংখ্যা (উৎপত্তির সংখ্যা × গন্তব্যের সংখ্যা) 100-এর বেশি হতে পারে না।
রুট এপিআই
duration
প্রতিক্রিয়া বৈশিষ্ট্য সেট করার উপায় পরিবর্তন করে এবং বর্তমান প্রতিক্রিয়াতে ফিরে আসা বৈশিষ্ট্যগুলিকে সংশোধন করে, যেমনটি নিম্নলিখিত টেবিলে দেখানো হয়েছে:ভ্রমণ ETA এর প্রকার কারেন্ট রুট API ট্রাফিক অজানা, সময়-স্বাধীন ETA। অনুরোধে
departure_time
সেট করা না হওয়ার সাথে মিলে যায়।- ETA
duration
প্রতিক্রিয়া বৈশিষ্ট্য অন্তর্ভুক্ত. -
duration_in_traffic
প্রতিক্রিয়া বৈশিষ্ট্য ফেরত দেওয়া হয় না।
TRAFFIC_UNAWARE
সাথে মিলে যায়।- ETA
duration
প্রতিক্রিয়া বৈশিষ্ট্য অন্তর্ভুক্ত. -
duration
এবংstaticDuration
প্রতিক্রিয়া বৈশিষ্ট্য একই মান ধারণ করে।
ETA যা রিয়েল-টাইম ট্রাফিক বিবেচনা করে। অনুরোধে
departure_time
সেট করার সাথে মিলে যায়।- রিয়েল-টাইম ট্রাফিক বিবেচনায় নেওয়া ETA
duration_in_traffic
রেসপন্স প্রপার্টিতে রয়েছে।
TRAFFIC_AWARE
বাTRAFFIC_AWARE_OPTIMAL
সাথে মিলে যায়৷- রিয়েল-টাইম ট্র্যাফিক বিবেচনায় নেওয়া ETA
duration
প্রতিক্রিয়া বৈশিষ্ট্যের মধ্যে রয়েছে। -
staticDuration
রেসপন্স প্রপার্টিতে ট্রাফিক পরিস্থিতি বিবেচনায় না নিয়ে রুট দিয়ে ভ্রমণের সময়কাল রয়েছে। -
duration_in_traffic
সম্পত্তি আর ফেরত দেওয়া হয় না।
আরও তথ্যের জন্য, মান বনাম লেটেন্সি কনফিগার করুন দেখুন।
রুট API-এ বিদ্যমান বৈশিষ্ট্যগুলি সমর্থিত নয়৷
নিম্নলিখিত বৈশিষ্ট্যগুলি রুট API-এ সমর্থিত হবে না:
একটি প্রতিক্রিয়া বিন্যাস হিসাবে XML. শুধুমাত্র JSON এবং gRPC সমর্থিত।
বিপরীত জিওকোডিং
আপনি এখন এই কার্যকারিতার জন্য বিপরীত জিওকোডিং API ব্যবহার করেন, যা এই ব্যবহারের ক্ষেত্রে তৈরি করা হয়েছে এবং উচ্চ মানের ফলাফল প্রদান করে।
Routes API এ স্থানান্তর করুন
আমরা Routes API এ বেশ কিছু পরিবর্তন করেছি। বেশিরভাগ পরিবর্তনগুলি বর্তমান APIগুলির সাথে পিছিয়ে সামঞ্জস্যপূর্ণ তবে নীচে তালিকাভুক্ত কয়েকটি ব্রেকিং পরিবর্তন রয়েছে যেগুলির জন্য অ্যাপগুলিকে রুট API এ স্থানান্তর করার সময় আপনার মনোযোগের প্রয়োজন৷
REST API শেষ পয়েন্ট আপডেট করুন
আপনি যদি দিকনির্দেশ API ব্যবহার করেন, নতুন রুট API শেষ পয়েন্ট ব্যবহার করতে আপনার কোড আপডেট করুন:
দিকনির্দেশ API | https://maps.googleapis.com/maps/api/directions/ outputFormat ? parameters |
রুট API | https://routes.googleapis.com/directions/v2:computeRoutes |
আপনি যদি দূরত্ব ম্যাট্রিক্স এপিআই ব্যবহার করেন, নতুন রুট এপিআই এন্ডপয়েন্ট ব্যবহার করতে আপনার কোড আপডেট করুন:
দূরত্ব ম্যাট্রিক্স API | https://maps.googleapis.com/maps/api/distancematrix/ outputFormat ? parameters |
রুট API | https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix |
একটি HTTP অনুরোধের বডি ব্যবহার করতে URL প্যারামিটারগুলিকে রূপান্তর করুন৷
নির্দেশাবলী API এবং দূরত্ব ম্যাট্রিক্স API এর সাথে, আপনি একটি HTTP GET অনুরোধে URL প্যারামিটার হিসাবে কনফিগারেশন বৈশিষ্ট্যগুলি পাস করেন। উদাহরণস্বরূপ, দিকনির্দেশ API এর জন্য:
https://maps.googleapis.com/maps/api/directions/outputFormat?parameters
Routes API-এর সাহায্যে, আপনি একটি অনুরোধের অংশে বা একটি HTTP POST অনুরোধের অংশ হিসাবে হেডারগুলিতে প্যারামিটারগুলি পাস করেন৷ উদাহরণের জন্য, দেখুন:
বর্তমান পরামিতিগুলিকে রুট API প্যারামিটারে রূপান্তর করুন
নিম্নোক্ত সারণী বর্তমান দিকনির্দেশ API এবং দূরত্ব ম্যাট্রিক্স API-এর পরামিতিগুলিকে তালিকাভুক্ত করে যা পুনঃনামকরণ বা সংশোধন করা হয়েছে, অথবা পূর্বরূপ প্রকাশে সমর্থিত নয় এমন পরামিতিগুলি। আপনি যদি এই প্যারামিটারগুলির যেকোনো একটি ব্যবহার করেন তবে আপনার কোড আপডেট করুন।
বর্তমান পরামিতি | রুট API প্যারামিটার | মন্তব্য |
---|---|---|
destination | destination | প্রিভিউ রিলিজে ঠিকানা এবং প্লাস কোড পাওয়া যায় না। |
origin | origin | প্রিভিউ রিলিজে ঠিকানা এবং প্লাস কোড পাওয়া যায় না। |
alternatives | computeAlternativeRoutes | |
arrival_time | উপলব্ধ নয় কারণ প্রিভিউতে TRANSIT মোড উপলব্ধ নয়৷ | |
avoid | routeModifiers | |
copyrights | প্রিভিউ রিলিজে পাওয়া যায় না। | |
departure_time | departureTime | |
distance | distanceMeters | দূরত্ব শুধুমাত্র মিটার পাওয়া যায়. |
duration_in_traffic |
| Routes API থেকে সরানো হয়েছে, duration ব্যবহার করুন। আরও তথ্যের জন্য, উপরে নতুন রুট API-এর কার্যকারিতা পরিবর্তনগুলি দেখুন৷ |
language | languageCode | |
mode | travelMode | প্রিভিউতে |
region | প্রিভিউ রিলিজে উপলব্ধ নয় কারণ ঠিকানাগুলি সমর্থিত নয়৷ | |
status | প্রিভিউ রিলিজে পাওয়া যায় না। API দ্বারা রিপোর্ট করা ত্রুটির জন্য HTTP প্রতিক্রিয়া কোডগুলি ব্যবহার করুন৷ আরও তথ্যের জন্য অনুরোধ ত্রুটিগুলি পরিচালনা করুন দেখুন৷ | |
traffic_model | প্রিভিউ রিলিজে পাওয়া যায় না। | |
transit_mode | উপলব্ধ নয় কারণ প্রিভিউতে TRANSIT মোড উপলব্ধ নয়৷ | |
transit_routing_preference | উপলব্ধ নয় কারণ প্রিভিউতে TRANSIT মোড উপলব্ধ নয়৷ | |
units | পূর্বরূপ প্রকাশে দূরত্ব ম্যাট্রিক্সের জন্য উপলব্ধ নয়। | |
waypoints | intermediates | প্রিভিউ রিলিজে ঠিকানা এবং পলিলাইন পাওয়া যায় না। |
optimize=true | প্রিভিউ রিলিজে পাওয়া যায় না। |