প্লেস ফটোস (লেগ্যাসি), যা প্লেসেস এপিআই-এর একটি অংশ, হলো একটি রিড-অনলি এপিআই যা আপনাকে আপনার অ্যাপ্লিকেশনে উচ্চ মানের ফটোগ্রাফিক কন্টেন্ট যোগ করতে দেয়। প্লেস ফটোস (লেগ্যাসি) আপনাকে প্লেসেস ডেটাবেসে সংরক্ষিত লক্ষ লক্ষ ফটো অ্যাক্সেস করার সুযোগ দেয়। যখন আপনি একটি প্লেস ডিটেইলস রিকোয়েস্ট ব্যবহার করে কোনো স্থানের তথ্য পান, তখন প্রাসঙ্গিক ফটোগ্রাফিক কন্টেন্টের জন্য ফটো রেফারেন্স ফেরত দেওয়া হবে। ফাইন্ড প্লেস (লেগ্যাসি), নিয়ারবাই সার্চ (লেগ্যাসি), এবং টেক্সট সার্চ (লেগ্যাসি) রিকোয়েস্টগুলোও প্রাসঙ্গিক হলে প্রতিটি স্থানের জন্য একটি করে ফটো রেফারেন্স ফেরত দেয়। এরপর প্লেস ফটোস (লেগ্যাসি) ব্যবহার করে আপনি রেফারেন্স করা ফটোগুলো অ্যাক্সেস করতে এবং আপনার অ্যাপ্লিকেশনের জন্য ছবিটিকে সর্বোত্তম আকারে রিসাইজ করতে পারবেন।
প্লেস ফটোস (লেগ্যাসি) অনুরোধ
একটি Place Photos (Legacy) অনুরোধ হলো নিম্নলিখিত ফর্মের একটি HTTP URL:
https://maps.googleapis.com/maps/api/place/photo?parameters
অনুসন্ধানের অনুরোধ শুরু করার জন্য নির্দিষ্ট কিছু প্যারামিটার প্রয়োজন। ইউআরএল-এর প্রচলিত রীতি অনুযায়ী, সমস্ত প্যারামিটার অ্যামপারস্যান্ড ( & ) চিহ্ন দিয়ে আলাদা করা হয়। প্যারামিটার এবং তাদের সম্ভাব্য মানগুলির তালিকা নিচে দেওয়া হলো।
প্রয়োজনীয় প্যারামিটার
ছবির রেফারেন্স
একটি স্ট্রিং আইডেন্টিফায়ার যা একটি ছবিকে অনন্যভাবে শনাক্ত করে। প্লেস সার্চ অথবা প্লেস ডিটেইলস রিকোয়েস্ট থেকে ছবির রেফারেন্সগুলো ফেরত আসে।
সর্বোচ্চ উচ্চতা বা সর্বোচ্চ প্রস্থ
maxheightপিক্সেল-এ ছবির সর্বোচ্চ পছন্দসই উচ্চতা নির্দিষ্ট করে। যদি ছবিটি নির্দিষ্ট মানের চেয়ে ছোট হয়, তবে মূল ছবিটি ফেরত দেওয়া হবে। যদি ছবিটি যেকোনো একটি দিকে বড় হয়, তবে এটিকে এর মূল অ্যাস্পেক্ট রেশিও-তে সীমাবদ্ধ রেখে দুটি দিকের মধ্যে ছোটটির সাথে মেলানোর জন্য স্কেল করা হবে।maxwidthছবির সর্বোচ্চ পছন্দসই প্রস্থ (পিক্সেল-এ) নির্দিষ্ট করে। যদি ছবিটি নির্দিষ্ট মানের চেয়ে ছোট হয়, তবে মূল ছবিটি ফেরত দেওয়া হবে। যদি ছবিটি যেকোনো একটি দিকে বড় হয়, তবে এটিকে এর মূল অ্যাস্পেক্ট রেশিওতে সীমাবদ্ধ রেখে দুটি দিকের মধ্যে ছোটটির সাথে মেলানোর জন্য স্কেল করা হবে।maxheightএবংmaxwidthউভয় প্রপার্টিই1থেকে1600মধ্যে একটি পূর্ণসংখ্যা গ্রহণ করে।আপনাকে অবশ্যই
maxheight,maxwidth), অথবা উভয়ই নির্দিষ্ট করতে হবে।
ছবির রেফারেন্স
প্লেস ফটোস (লেগ্যাসি)-এর সমস্ত অনুরোধে অবশ্যই একটি photo_reference অন্তর্ভুক্ত থাকতে হবে, যা ফাইন্ড প্লেস (লেগ্যাসি), নিয়ারবাই সার্চ (লেগ্যাসি), টেক্সট সার্চ (লেগ্যাসি), বা প্লেস ডিটেইলস (লেগ্যাসি) অনুরোধের প্রতিক্রিয়ায় ফেরত আসে। যদি স্থানটিতে সম্পর্কিত আলোকচিত্র সামগ্রী থাকে, তাহলে এই অনুরোধগুলির প্রতিক্রিয়ায় একটি photos[] ফিল্ড থাকবে।
দ্রষ্টব্য: অনুরোধভেদে ফেরত দেওয়া ছবির সংখ্যা ভিন্ন হতে পারে।
- একটি Find Place (Legacy), Nearby Search (Legacy), বা Text Search (Legacy) অনুরোধ অ্যারে থেকে সর্বাধিক একটি
photoউপাদান ফেরত দেয়। - একটি প্লেস ডিটেইলস (লেগ্যাসি) অনুরোধের মাধ্যমে সর্বোচ্চ দশটি
photoএলিমেন্ট ফেরত পাওয়া যায়।
প্রতিটি photo উপাদানে নিম্নলিখিত ক্ষেত্রগুলি রয়েছে:
-
photo_reference— প্লেস ফটোস (লেগ্যাসি) অনুরোধ করার সময় ছবিটি শনাক্ত করতে ব্যবহৃত একটি স্ট্রিং। -
height— ছবিটির সর্বোচ্চ উচ্চতা। -
width— ছবিটির সর্বোচ্চ প্রস্থ। -
html_attributions[]— এতে প্রয়োজনীয় অ্যাট্রিবিউশনগুলো থাকে। এই ফিল্ডটি সর্বদা উপস্থিত থাকবে, তবে এটি খালিও থাকতে পারে।
প্লেস ফটোস (লেগ্যাসি) দ্বারা প্রাপ্ত ছবিগুলো বিভিন্ন উৎস থেকে সংগ্রহ করা হয়, যার মধ্যে রয়েছে ব্যবসার মালিক এবং ব্যবহারকারীদের দেওয়া ছবি। বেশিরভাগ ক্ষেত্রে, এই ছবিগুলো অ্যাট্রিবিউশন ছাড়াই ব্যবহার করা যায়, অথবা ছবির অংশ হিসেবে প্রয়োজনীয় অ্যাট্রিবিউশন অন্তর্ভুক্ত থাকে। তবে, যদি প্রাপ্ত photo এলিমেন্টের html_attributions ফিল্ডে কোনো ভ্যালু থাকে, তাহলে আপনার অ্যাপ্লিকেশনে যেখানেই ছবিটি প্রদর্শন করুন না কেন, আপনাকে অবশ্যই অতিরিক্ত অ্যাট্রিবিউশনটি অন্তর্ভুক্ত করতে হবে।
নিম্নলিখিত উদাহরণটি একটি স্থানের বিবরণ (লেগ্যাসি) অনুরোধ দেখাচ্ছে:
curl "https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJcUElzOzMQQwRLuV30nMUEUM&key=YOUR_API_KEY"
রেসপন্সে থাকা photos[] অ্যারের একটি উদাহরণ নিচে দেখানো হলো।
...
"photos" : [
{
"html_attributions" : [],
"height" : 853,
"width" : 1280,
"photo_reference" : "ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q"
}]
...
প্লেস ফটোস (লেগ্যাসি) উদাহরণ
নিচে একটি অনুরোধের উদাহরণ দেখানো হলো। এই অনুরোধটি উল্লেখিত ছবিটি ফেরত দেয় এবং এর আকার এমনভাবে পরিবর্তন করে যাতে এর প্রস্থ সর্বোচ্চ ৪০০ পিক্সেল হয়।
https://maps.googleapis.com/maps/api/place/photo?maxwidth=400&photo_reference=ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q &key=YOUR_API_KEY
প্লেস ফটোস (লেগ্যাসি) প্রতিক্রিয়া
একটি সফল প্লেস ফটোস (লেগ্যাসি) অনুরোধের প্রতিক্রিয়া হিসাবে একটি ছবি পাওয়া যায়। ছবির ধরনটি মূলত জমা দেওয়া ছবির ধরনের উপর নির্ভর করে।
আপনার অনুরোধ উপলব্ধ কোটা অতিক্রম করলে, সার্ভার একটি HTTP 403 স্ট্যাটাস ফেরত দেয় এবং কোটা অতিক্রম করার বিষয়টি বোঝাতে নিচের ছবিটি প্রদর্শন করে:

সার্ভার যদি আপনার অনুরোধটি বুঝতে না পারে, তাহলে এটি HTTP 400 স্ট্যাটাস ফেরত দেয়, যা একটি অবৈধ অনুরোধ নির্দেশ করে। একটি অবৈধ অনুরোধের সবচেয়ে সাধারণ কারণগুলোর মধ্যে রয়েছে:
- দাখিলকৃত ছবির রেফারেন্সটি সঠিকভাবে উল্লেখ করা হয়নি।
- অনুরোধটিতে
maxwidthবাmaxheightপ্যারামিটার দুটি অন্তর্ভুক্ত ছিল না। -
maxwidthঅথবাmaxheightপ্যারামিটার দুটির যেকোনো একটির মানnullসেট করা হয়েছিল। -
photo_referenceটির মেয়াদ শেষ হয়ে গেছে।photo_referenceমেয়াদ শেষ হয়ে গেলে, আপডেট করাphoto_referenceভ্যালুটি পেতে Place Details (Legacy) , Find Place (Legacy) , Nearby Search (Legacy) , অথবা Text Search (Legacy)- তে একটি অনুরোধ করুন।