পরামিতি অনুরোধ

এই ডকুমেন্টে Places Aggregate API-এর অনুরোধের প্যারামিটারগুলি বর্ণনা করা হয়েছে এবং এই পরিষেবাটি ব্যবহারের জন্য অন্তর্দৃষ্টি এবং সর্বোত্তম অনুশীলনগুলি অন্তর্ভুক্ত করা হয়েছে।

Places Aggregate API আপনাকে বেশ কয়েকটি গুরুত্বপূর্ণ ফাংশন সম্পাদন করতে দেয়:

  • স্থান গণনা করুন : অবস্থানের ধরণ, পরিচালনার স্থিতি, মূল্য স্তর এবং রেটিং এর মতো নির্দিষ্ট মানদণ্ডের সাথে মেলে এমন স্থানের সংখ্যা নির্ধারণ করুন।
  • স্থানের বিবরণ পুনরুদ্ধার করুন : নির্দিষ্ট ফিল্টারগুলি পূরণ করে এমন স্থানের নাম পান, তারপর স্থান API ব্যবহার করে আরও বিস্তারিত তথ্য আনুন।
  • নমনীয় ফিল্টারিং : সুনির্দিষ্ট সমষ্টি পেতে ব্যাপক ফিল্টার প্রয়োগ করুন। উপলব্ধ ফিল্টারগুলির মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে:
    • ভৌগোলিক এলাকা (বৃত্ত, অঞ্চল, অথবা কাস্টম বহুভুজ)
    • স্থানের ধরণ
    • অপারেটিং অবস্থা
    • দামের স্তর
    • রেটিং রেঞ্জ

প্রয়োজনীয় পরামিতি

এই বিভাগটি Places Aggregate API-তে অনুরোধ জারি করার সময় প্রয়োজনীয় প্যারামিটারগুলি কভার করে। প্রতিটি অনুরোধে নিম্নলিখিতগুলি সরবরাহ করতে হবে:

  • এক ধরণের অন্তর্দৃষ্টি।
  • একটি অবস্থান ফিল্টার এবং টাইপ ফিল্টার।

অন্তর্দৃষ্টির ধরণ

আপনি যে ধরণের অন্তর্দৃষ্টি গণনা করতে চান তা নির্দিষ্ট করে। নিম্নলিখিত অন্তর্দৃষ্টি প্রকারগুলি সমর্থিত:

  • INSIGHT_COUNT : ফিল্টারের মানদণ্ডের সাথে মিলে যাওয়া স্থানের সংখ্যা প্রদান করে।
  • INSIGHT_PLACES : ফিল্টারের মানদণ্ডের সাথে মিলে যাওয়া স্থানের আইডিগুলি ফেরত পাঠায়।

ফিল্টার

স্থান ফিল্টার করার মানদণ্ড নির্দিষ্ট করে। কমপক্ষে, আপনাকে LocationFilter এবং TypeFilter নির্দিষ্ট করতে হবে।

অবস্থান ফিল্টার

একটি লোকেশন ফিল্টার নিম্নলিখিত ধরণের যেকোনো একটি হতে পারে:

  • circle : একটি ক্ষেত্রফলকে কেন্দ্র এবং ব্যাসার্ধ বিশিষ্ট বৃত্ত হিসেবে সংজ্ঞায়িত করে।
  • region : একটি এলাকাকে একটি অঞ্চল হিসেবে সংজ্ঞায়িত করে।
  • customArea : একটি এলাকাকে একটি কাস্টম বহুভুজ হিসেবে সংজ্ঞায়িত করে।
বৃত্ত

যদি আপনি আপনার ভৌগোলিক এলাকাকে বৃত্ত হিসেবে নির্বাচন করেন, তাহলে আপনাকে একটি center এবং একটি radius প্রদান করতে হবে। center অক্ষাংশ এবং দ্রাঘিমাংশ হতে পারে, অথবা বৃত্তের কেন্দ্রের স্থান আইডি হতে পারে। এই পদ্ধতিটি আপনার নির্ধারিত বৃত্তাকার অঞ্চলের উপর ভিত্তি করে সুনির্দিষ্ট এবং নির্ভুল ফিল্টারিংয়ের অনুমতি দেয়।

  • center :
    • latLng : বৃত্তের কেন্দ্রের অক্ষাংশ এবং দ্রাঘিমাংশ। অক্ষাংশ অবশ্যই -৯০, ৯০ সহ একটি সংখ্যা হতে হবে। দ্রাঘিমাংশ অবশ্যই -১৮০, ১৮০ সহ একটি সংখ্যা হতে হবে।
    • place : বৃত্তের কেন্দ্রের স্থান আইডি। মনে রাখবেন যে শুধুমাত্র বিন্দু স্থান সমর্থিত। এই স্ট্রিংটি places/ উপসর্গ দিয়ে শুরু হওয়া উচিত।
  • radius : মিটারে বৃত্তের ব্যাসার্ধ। এই সংখ্যাটি অবশ্যই ধনাত্মক হতে হবে।
অঞ্চল

place প্যারামিটারে একটি স্থান আইডি পাস করে আপনার এলাকাকে একটি অঞ্চল হিসেবে সংজ্ঞায়িত করুন। স্থান আইডি একটি ভৌগোলিক এলাকা (যেমন একটি বহুভুজ দ্বারা প্রতিনিধিত্বযোগ্য এলাকা) প্রতিনিধিত্ব করে। উদাহরণস্বরূপ, টাম্পা, ফ্লোরিডার স্থান আইডি হল places/ChIJ4dG5s4K3wogRY7SWr4kTX6c । মনে রাখবেন যে সমস্ত স্থান আইডির একটি সুনির্দিষ্ট জ্যামিতি থাকে না এবং এই ক্ষেত্রে Places Aggregate API একটি 400 ত্রুটি কোড ফেরত দেয় যা একটি বার্তা সহ নির্দেশ করে যে অঞ্চলটি সমর্থিত নয়। অতিরিক্তভাবে, জটিল ভৌগোলিক অঞ্চলের জন্য, অভ্যন্তরীণ প্রক্রিয়াকরণ অপ্টিমাইজেশনের ফলে অঞ্চলটির সামান্য অতিরিক্ত আনুমানিকতা (2-3% পর্যন্ত) হতে পারে যা অঞ্চলটিকে প্রতিনিধিত্ব করে।

কোনও স্থানের আইডি অসমর্থিত স্থানের ধরণকে প্রতিনিধিত্ব করে কিনা তা নির্ধারণ করতে, একটি জিওকোডিং API অনুরোধে স্থানের আইডিটি পাস করুন। প্রতিক্রিয়াতে স্থানের আইডির সাথে সম্পর্কিত স্থানের ধরণগুলি তালিকাভুক্ত type অ্যারে অন্তর্ভুক্ত থাকে, যেমন locality , neighborhood , অথবা country . যদি কোনও স্থানের ধরণ এই তালিকার সাথে মেলে তবে অঞ্চল ফিল্টারিংয়ের জন্য প্রত্যাখ্যান করা হবে।

অসমর্থিত স্থানের ধরণগুলির মধ্যে রয়েছে:

  • establishment : সাধারণত এমন একটি স্থানকে নির্দেশ করে যা এখনও শ্রেণীবদ্ধ করা হয়নি।
  • intersection : সাধারণত দুটি প্রধান রাস্তার একটি প্রধান ছেদ নির্দেশ করে।
  • subpremise : প্রাইমাইজ লেভেলের নিচে একটি ঠিকানাযোগ্য সত্তা নির্দেশ করে, যেমন একটি অ্যাপার্টমেন্ট, ইউনিট, বা স্যুট।
কাস্টম এলাকা

অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক ব্যবহার করে একটি কাস্টম বহুভুজের ক্ষেত্রফল নির্ধারণ করে।

তুমি যেতে পারো https://geojson.io/ একটি কাস্টম বহুভুজ আঁকতে এবং অনুরোধে সেই স্থানাঙ্কগুলি প্রবেশ করাতে। একটি বহুভুজের কমপক্ষে 4টি স্থানাঙ্ক থাকতে হবে, যেখানে প্রথম এবং শেষ স্থানাঙ্কগুলি অভিন্ন। প্রদত্ত স্থানাঙ্কগুলির মধ্যে কমপক্ষে 3টি অনন্য হতে হবে।

ধারাবাহিকভাবে অভিন্ন স্থানাঙ্কগুলিকে একটি একক স্থানাঙ্ক হিসেবে গণ্য করা হবে। তবে, ধারাবাহিকভাবে না থাকা সদৃশ স্থানাঙ্কগুলি (প্রয়োজনীয় অভিন্ন প্রথম এবং শেষ স্থানাঙ্ক ব্যতীত) একটি ত্রুটির কারণ হবে।

অতিরিক্তভাবে, অ-সংলগ্ন প্রান্তগুলিকে ছেদ করার অনুমতি নেই, এবং 180 ডিগ্রি দৈর্ঘ্যের প্রান্তগুলিকে অনুমতি দেওয়া হয়নি (অর্থাৎ, সংলগ্ন শীর্ষবিন্দুগুলি প্রতিপদ হতে পারে না)।

উদাহরণস্বরূপ:

"coordinates":[
   {
      "latitude":37.776,
      "longitude":-122.666
   },
   {
      "latitude":37.130,
      "longitude":-121.898
   },
   {
      "latitude":37.326,
      "longitude":-121.598
   },
   {
      "latitude":37.912,
      "longitude":-122.247
   },
   {
      "latitude":37.776,
      "longitude":-122.666
   }
]

ফিল্টার টাইপ করুন

অন্তর্ভুক্ত বা বাদ দেওয়ার জন্য স্থানের ধরণ নির্দিষ্ট করে। Places Aggregate API সমর্থন করে এমন প্রাথমিক এবং গৌণ উভয় ধরণের স্থানের তালিকার জন্য, Places API (নতুন) এর জন্য Place Types এর অধীনে টেবিল A ​​দেখুন। আপনাকে কমপক্ষে একটি includedTypes বা includedPrimaryTypes প্রকার উল্লেখ করতে হবে।

  • includedTypes : অন্তর্ভুক্ত স্থানের প্রকারের তালিকা।
  • excludedTypes : বাদ দেওয়া স্থানের প্রকারের তালিকা।
  • includedPrimaryTypes : অন্তর্ভুক্ত প্রাথমিক স্থানের প্রকারের তালিকা।
  • excludedPrimaryTypes : বাদ দেওয়া প্রাথমিক স্থানের প্রকারের তালিকা।

টাইপ ফিল্টার এবং প্লেস টাইপ কীভাবে কাজ করে সে সম্পর্কে আরও জানতে, টাইপ ফিল্টার সম্পর্কে আরও দেখুন।

ঐচ্ছিক পরামিতি

এই ফিল্টারগুলি ঐচ্ছিক:

  • operatingStatus : অন্তর্ভুক্ত বা বাদ দেওয়ার জন্য স্থানগুলির স্থিতি নির্দিষ্ট করে। operatingStatus: OPERATING_STATUS_OPERATIONAL (একটি নির্দিষ্ট মান)।
  • priceLevels : অন্তর্ভুক্ত করার জন্য স্থানের মূল্য স্তর নির্দিষ্ট করে। ডিফল্টরূপে, কোনও মূল্য স্তর ফিল্টারিং প্রয়োগ করা হয় না এবং সমস্ত স্থান (মূল্য স্তরের তথ্য ছাড়াই স্থানগুলি সহ) ফেরত পাঠানো হয়।
  • ratingFilter : স্থানগুলির রেটিং পরিসর নির্দিষ্ট করে। ডিফল্টভাবে কোনও ফিল্টারিং নেই (সকল রেটিং ফলাফলে অন্তর্ভুক্ত করা হয়)।

অপারেটিং অবস্থা

operatingStatus ফিল্টারের সাহায্যে, আপনি OPERATIONAL অথবা TEMPORARILY_CLOSED মতো অপারেটিং স্ট্যাটাসের উপর ভিত্তি করে ফিল্টার করতে পারেন। operatingStatus ফিল্টার আচরণ নিম্নরূপ কাজ করে:

  • যদি কোনও ফিল্টার সরবরাহ না করা থাকে, তাহলে শুধুমাত্র OPERATING_STATUS_OPERATIONAL অপারেটিং স্ট্যাটাস সহ স্থানগুলি ফলাফলে অন্তর্ভুক্ত করা হবে।
  • যদি এক বা একাধিক ফিল্টার সরবরাহ করা হয়, তাহলে আপনাকে অবশ্যই বৈধ অপারেটিং স্ট্যাটাস মান ( OPERATING_STATUS_OPERATIONAL , OPERATING_STATUS_PERMANENTLY_CLOSED , অথবা OPERATING_STATUS_TEMPORARILY_CLOSED ) উল্লেখ করতে হবে।

দামের স্তর

priceLevels ফিল্টারের সাহায্যে, আপনি স্থানগুলিকে তাদের মূল্য স্তরের উপর ভিত্তি করে ফিল্টার করতে পারেন। বৈধ মূল্য স্তরের মানগুলি হল: PRICE_LEVEL_FREE , PRICE_LEVEL_INEXPENSIVE , PRICE_LEVEL_MODERATE , PRICE_LEVEL_EXPENSIVE , এবং PRICE_LEVEL_VERY_EXPENSIVE .

priceLevels ফিল্টারের আচরণ নিম্নরূপ:

  • যদি কোনও ফিল্টার সরবরাহ না করা থাকে: সমস্ত স্থান ফেরত দেওয়া হবে, সেগুলির জন্য কোনও মূল্য স্তর নির্ধারিত থাকুক না কেন । এর মধ্যে মূল্য স্তরের তথ্য ছাড়াই স্থানগুলি অন্তর্ভুক্ত, যা নির্দিষ্ট মূল্য স্তর অনুসারে ফিল্টার করার সময় ফেরত নাও দেওয়া যেতে পারে।
  • যদি এক বা একাধিক ফিল্টার সরবরাহ করা থাকে: কেবলমাত্র নির্দিষ্ট মূল্য স্তরের সাথে মিলে যাওয়া স্থানগুলি ফেরত দেওয়া হয়।

রেটিং ফিল্টার

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

  • minRating : সর্বনিম্ন গড় ব্যবহারকারী রেটিং (১.০ থেকে ৫.০ এর মধ্যে)।
  • maxRating : সর্বোচ্চ গড় ব্যবহারকারী রেটিং (১.০ থেকে ৫.০ এর মধ্যে)।

অতিরিক্তভাবে, minRating মান সর্বদা maxRating মানের চেয়ে কম বা সমান হতে হবে। যদি minRating maxRating এর চেয়ে বড় হিসাবে নির্দিষ্ট করা হয়, তাহলে একটি INVALID_ARGUMENT ত্রুটি ফেরত পাঠানো হবে।