Locator Plus প্রয়োগ করার নির্দেশিকা

এক নজরে

ওয়েব iOS API

Google Maps Platform ওয়েব (JS, TS), Android ও iOS-এর জন্য উপলভ্য এবং এটি জায়গা, দিকনির্দেশ ও দূরত্ব সম্পর্কে তথ্য পাওয়ার জন্য ওয়েব পরিষেবা API-ও অফার করে। এই নির্দেশিকায় নমুনাগুলি একটি প্ল্যাটফর্মের জন্য লেখা হয়েছে, কিন্তু অন্যান্য প্ল্যাটফর্মে প্রয়োগ করার জন্য ডকুমেন্টেশন লিঙ্ক দেওয়া হয়েছে।

এটি এখনই তৈরি করুন!

দ্রুত বিল্ডার Google Cloud Console-এ আপনাকে লোকেটর দ্রুত তৈরি করতে দেয়, এর মধ্যে রয়েছে Business Profile তালিকা ইমপোর্ট করা এবং থার্ড-পার্টি প্রদানকারীর থেকে অ্যাপয়েন্টমেন্ট বুকিং লিঙ্ক অটোমেটিক এম্বেড করা। ইন্টার‍্যাক্টিভ UI আপনাকে কোড তৈরি করতে এবং কয়েক মিনিটের মধ্যে Cloud-এ ডেপ্লয় করতে দেয়।

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

এই ডকুমেন্টে আমরা যে নির্দেশিকা ও কাস্টমাইজেশন সংক্রান্ত পরামর্শ দিয়েছি—Locator Plus—সেটিই হল Google Maps Platform API-এর অপ্টিমাল কম্বিনেশন। এর মাধ্যমে লোকেটর সংক্রান্ত দারুণ ব্যবহারকারীর অভিজ্ঞতা তৈরি করা যায়। এইসব পদ্ধতি অনুসরণ করে, আপনি ব্যবহারকারীদের ম্যাপে আপনার লোকেশন খুঁজে পেতে, সিদ্ধান্ত নেওয়ার জন্য প্রয়োজনীয় বিস্তারিত তথ্য দেখতে এবং তারা গাড়ি চালানো, সাইকেল চালানো, হাঁটাচলা বা পাবলিক ট্রানজিট ব্যবহার করা যাই করুন না কেন, তাদের দিকনির্দেশ দিতে পারবেন।

Locator Plus ব্যবহারকারীদের জন্য, একটি অ্যানালিটিক্স ড্যাশবোর্ড আপনাকে ডেটা থেকে ইনসাইট বিশ্লেষণ ও জেনারেট করতে সাহায্য করে। এর ফলে, আপনার স্টোর লোকেটরের সাথে ক্রেতারা কতটা ভালভাবে এনগেজ করছেন সে সম্পর্কে আপনি একটি স্পষ্ট ধারণা পান। এই রিপোর্ট অ্যাক্সেস করতে, কনসোলের এনগেজমেন্ট রিপোর্ট বিভাগে যান। এই রিপোর্ট সম্পর্কে আরও জানতে, এনগেজমেন্ট রিপোর্ট দেখুন।

Locator Plus প্রয়োগ করার ক্ষেত্রে মূল API-এর ভূমিকা নিম্নলিখিত ডায়াগ্রামে দেখানো হয়েছে। এছাড়াও, ডায়াগ্রামে আপনার নিজের লোকেশন ডেটার একটি ডেটাবেস দেখানো হয় যা আপনি প্লেস বিবরণের সাথে মিলিয়ে ব্যবহারকারীদের সম্ভাব্য সেরা ও সবচেয়ে সম্পূর্ণ তথ্য প্রদান করতে পারেন। (বড় করে দেখতে ক্লিক করুন।)

ডায়াগ্রামের বাঁদিকে, একটি ওয়েব ব্রাউজার, স্থান সম্পর্কিত বিবরণ পপ-আপ সহ ম্যাপ দেখায়।
              ডায়াগ্রামের ডানদিকে, বিভিন্ন কার্যকারিতা প্রদানকারী API-এর একটি তালিকা:
              লোকেশন ভিজ্যুয়ালাইজেশন ও কন্টেন্ট, ম্যাপ স্টাইলিং, উন্নত
              মার্কার, কাস্টম Street View এবং রুট দেখানোর জন্য Maps JavaScript API. ঠিকানা সম্পূর্ণ করা ও টাইপ-অহেড ফাংশনের জন্য
              'জায়গা অটোমেটিক সম্পূর্ণ করা'। ঠিকানার লোকেশনের জন্য Places API (নতুন) এবং Geocoding API।
 দূরত্ব, সময় ও
              ভ্রমণ মোড অনুযায়ী লোকেশন র‍্যাঙ্ক করতে এবং ভ্রমণ সময় ও ভ্রমণ মোডের উপর ভিত্তি করে রুট দেখাতে Routes API ব্যবহার করা হয়।
              ডায়াগ্রামের মাঝখানে, কাস্টম লোকেশন ডেটা পয়েন্টের প্রতিনিধিত্বকারী ডেটা স্টোর আইকন
              ডাবল-হেডেড তীর সহ ওয়েব সার্ভার আইকন পর্যন্ত যা ওয়েব সার্ভার ও ডেটা স্টোরের মধ্যে ডেটা রিড ও রাইট
              ইঙ্গিত করে। ওয়েব ব্রাউজার
              ও API-এর মধ্যে থাকা তীরচিহ্নগুলি মধ্যস্থতাকারী হিসেবে ওয়েব সার্ভারের মাধ্যমে যায়।

API চালু করা

এইসব প্র্যাক্টিস প্রয়োগ করতে, আপনাকে অবশ্যই Google Cloud Console-এ নিম্নলিখিত API চালু করতে হবে: সেট-আপ সম্পর্কে আরও জানতে, Google Maps Platform ব্যবহার করা শুরু করা দেখুন।

প্রয়োগ সংক্রান্ত বিভাগ

এই ডকুমেন্টে আমরা যেসব প্র্যাক্টিস ও কাস্টমাইজেশন নিয়ে আলোচনা করব সেগুলি নিচে উল্লেখ করা হল।

  • টিক চিহ্ন আইকন হল একটি মূল প্র্যাক্টিস।
  • তারকা আইকন হল একটি ঐচ্ছিক কাস্টমাইজেশন যা সমাধানকে আরও উন্নত করতে সাজেস্ট করা হয়।
ইন্টার‍্যাক্টিভ ম্যাপে আপনার লোকেশন দেখানো

এমন একটি ম্যাপ তৈরি করুন যা ব্যবহারকারীদের লোকেশন সংক্রান্ত বিবরণ দেখতে, চারপাশে ঘুরতে এবং জুম ইন ও জুম আউট করতে দেয়।

অথবা Quick Builder Locator Plus সলিউশন এক্সপ্লোর করে দ্রুত ম্যাপ তৈরি করুন, এর মধ্যে আপনার Business Profile লিস্টিং থেকে ব্যবসার বিবরণ ইমপোর্ট করা, অ্যাপয়েন্টমেন্ট বুকিং লিঙ্ক এম্বেড করা এবং Google Cloud Storage-এ ডেপ্লয় করা অন্তর্ভুক্ত।

স্থানের বিবরণ প্রদান করা ব্যবহারকারীরা ম্যাপে আপনার সবচেয়ে কাছের লোকেশন খুঁজে পাওয়ার পরে, তাদের সিদ্ধান্ত নিতে সাহায্য করার জন্য লোকেশন সম্পর্কে অর্থপূর্ণ স্থানের বিবরণ দিন।
৪৫° ভিউ থেকে লোকেশন দেখানো হচ্ছে ৪৫-ডিগ্রি কোণ থেকে স্যাটেলাইট ভিউতে আপনার লোকেশনের আরও ভালো ভিজ্যুয়াল ব্যবহারকারীদের দিন।
আপনার ব্যবহারকারীর লোকেশন শনাক্ত করা সব প্ল্যাটফর্মে ব্যবহারকারীর অভিজ্ঞতা উন্নত করতে টাইপ-অ্যাজ-ইউ-গো ফাংশনালিটি যোগ করুন এবং ন্যূনতম কীস্ট্রোকের মাধ্যমে ঠিকানা সংক্রান্ত নির্ভুলতা উন্নত করুন।
সবচেয়ে কাছের লোকেশনে পৌঁছানোর সময় ও দূরত্ব দেখানো হচ্ছে একাধিক সোর্স ও ডেস্টিনেশনের জন্য ভ্রমণের দূরত্ব ও সময় গণনা করো, ঐচ্ছিকভাবে হাঁটা, ড্রাইভিং, বা সাইকেলের মতো বিভিন্ন ধরনের পরিবহন নির্দিষ্ট করো।
ব্যবহারকারীদের অ্যাপয়েন্টমেন্ট বুক করতে সাহায্য করা

ব্যবহারকারীদের স্থান সম্পর্কিত বিবরণ সাইড প্যানেল থেকে অ্যাপয়েন্টমেন্ট বুক করতে দিন।

অথবা Quick Builder Locator Plus সলিউশন এক্সপ্লোর করে দ্রুত ম্যাপ তৈরি করুন, এর মধ্যে আপনার Business Profile লিস্টিং থেকে ব্যবসার বিবরণ ইমপোর্ট করা, অ্যাপয়েন্টমেন্ট বুকিং লিঙ্ক এম্বেড করা এবং Google Cloud Storage-এ ডেপ্লয় করা অন্তর্ভুক্ত।

স্থানীয় অফার দেখানো হচ্ছে প্লেস বিবরণ সাইড প্যানেলে ব্যবহারকারীদের ক্লিক করা যায় এমন স্থানীয় অফার দেখান।
নেভিগেশন সংক্রান্ত দিকনির্দেশ প্রদান করা হাঁটা, ড্রাইভিং, সাইকেল চালানো ও পাবলিক ট্রানজিটের মতো বিভিন্ন ধরনের পরিবহন ব্যবহার করে উৎস থেকে গন্তব্য পর্যন্ত দিকনির্দেশ সংক্রান্ত ডেটা পান।
আপনার ম্যাপ কাস্টমাইজ করা আপনার লোকেশনকে আলাদা করে দেখাতে কাস্টম ম্যাপ মার্কার তৈরি করুন এবং আপনার ব্র্যান্ডের রঙের সাথে ম্যাচ করাতে ম্যাপের স্টাইল পরিবর্তন করুন। ব্যবহারকারীদের নিজেদের লোকেশন আরও ভালোভাবে বুঝতে সাহায্য করতে, আপনার ম্যাপে নির্দিষ্ট উল্লেখযোগ্য স্থান (POI) দেখান (বা লুকান) এবং ম্যাপে যাতে অনেক বেশি তথ্য না থাকে সেই জন্য উল্লেখযোগ্য স্থানের ঘনত্ব কন্ট্রোল করুন।
অ্যানালিটিক্সের মাধ্যমে ব্যবহার সংক্রান্ত ইনসাইট পাওয়া আপনার লোকেটর স্ট্র্যাটেজি ও প্রয়োগ সম্পর্কে ইনসাইট পেতে Google Analytics কনফিগার ও ব্যবহার করুন।
মোবাইলে দিকনির্দেশ পাঠানো লোকেটরে দিকনির্দেশ দেখানোর পাশাপাশি, আপনি কোনও ব্যবহারকারীর ফোনেও দিকনির্দেশ পাঠাতে পারবেন যাতে তিনি Google Maps ব্যবহার করে নেভিগেট করতে পারেন।
ব্যবহারকারীদের লোকেশন ভিজ্যুয়ালাইজ করতে সাহায্য করার জন্য Street View দেখানো হচ্ছে ব্যবহারকারীদের ৩৬০-ডিগ্রি ভিউ সহ Street View ছবি দিন যাতে তারা আরও ভালোভাবে লোকেশন সম্পর্কে জানতে পারেন এবং আপনার লোকেশন আরও দ্রুত খুঁজে পেতে পারেন।
জিওলোকেশন ব্যবহার করে ব্যবহারকারীর লোকেশন নির্ধারণ করা আপনি ডিভাইসে থাকা লোকেশন পরিষেবার উপর নির্ভর করতে না চাইলে, ব্যবহারকারীর লোকেশন শনাক্ত করতে জিওলোকেশন ব্যবহার করুন।
প্লেস বিবরণের সাথে কাস্টম লোকেশন ডেটা একত্রিত করা সিদ্ধান্ত নেওয়ার জন্য ব্যবহারকারীদের ডেটার একটি সমৃদ্ধ সেট দিতে, প্লেস বিবরণের সাথে আপনার নিজস্ব কাস্টম লোকেশন বিবরণ একত্রিত করুন।

ইন্টার‍্যাক্টিভ ম্যাপে আপনার লোকেশন দেখানো

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

আপনি দুটি উপায়ে এই কার্যকারিতা চালু করতে পারবেন: এটি বক্সের বাইরে প্রদান করতে Quick Builder Locator Plus সলিউশন ব্যবহার করে অথবা আপনার নিজস্ব Dynamic Maps প্রয়োগ করে। এই বিভাগে এইসব বিকল্পের ব্যাপারে বিস্তারিত বর্ণনা করা হয়েছে।

দ্রুত বিল্ডার লোকেটর প্লাস ব্যবহার করা

আপনার Business Profile থেকে ব্যবসার বিবরণ ইমপোর্ট করতে, আপনি Quick Builder Locator Plus সমাধান ব্যবহার করতে পারবেন। তাই এখন, আপনার Business Profile-এর ব্যবসার বিবরণে কোনও পরিবর্তন করলে তা আপনার ওয়েবসাইটের স্টোর লোকেটর বিভাগে দেখা যাবে। এইসব পরিবর্তনের মধ্যে ব্যবসা খোলা ও বন্ধ থাকার সময়, যোগাযোগের তথ্য, ফটো, পরিষেবার বিকল্প এবং আরও অনেক কিছু অন্তর্ভুক্ত থাকতে পারে। 'দ্রুত বিল্ডার' আপনাকে ম্যাপে বিজনেস লোকেশন সেট-আপ করা দ্রুত এক্সপ্লোর করতে, ডেপ্লয় করার উপযুক্ত কোড তৈরি করতে অথবা কয়েক মিনিটের মধ্যে সরাসরি Google Cloud Storage-এ ডেপ্লয় করতে সাহায্য করতে পারে।

Business Profile থেকে Quick Builder-এ ব্যবসার লোকেশন সংক্রান্ত বিবরণ ইমপোর্ট করা
আপনার Business Profile থেকে ব্যবসার বিবরণ ইমপোর্ট করে Locator Plus-এ আপনার লোকেশন ম্যানেজ করুন

Google Cloud Storage-এ সরাসরি Locator Plus অ্যাপ্লিকেশন ডিপ্লয় করা
Google Cloud ব্যবহার করে আপনার Locator Plus সলিউশন ডেপ্লয় করুন

আপনার নিজস্ব ডায়নামিক ম্যাপ প্রয়োগ করা

এই উদাহরণে এগুলি ব্যবহার করা হয়েছে: Maps JavaScript API এছাড়াও উপলভ্য: Android | iOS

আপনার পৃষ্ঠায় ডায়নামিক ম্যাপ যোগ করা—অর্থাৎ, এমন ম্যাপ যা ব্যবহারকারীরা চারপাশে ঘোরাতে, জুম ইন ও জুম আউট করতে এবং বিভিন্ন লোকেশন ও আগ্রহের বিষয় সম্পর্কে বিবরণ পেতে পারেন—কয়েক লাইন কোডের মাধ্যমে করা যেতে পারে।

প্রথমে, আপনাকে পৃষ্ঠায় Maps JavaScript API অন্তর্ভুক্ত করতে হবে। এটি আপনার HTML পৃষ্ঠায় নিম্নলিখিত স্ক্রিপ্ট লিঙ্ক করার মাধ্যমে করা হয়, যার মধ্যে libraries=marker অন্তর্ভুক্ত থাকে, যাতে আপনি ম্যাপে উন্নত মার্কার যোগ করতে পারেন।

<script defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=marker&callback=initMap&solution_channel=GMP_guides_locatorplus_v2_a"></script>

URL, জাভাস্ক্রিপ্ট initMap ফাংশনকে রেফার করে যা পৃষ্ঠা লোড হলে রান করে। এছাড়াও, আপনি URL-এ নিজের ম্যাপের ভাষা বা অঞ্চল উল্লেখ করতে পারেন, যাতে আপনি যে নির্দিষ্ট দেশকে টার্গেট করছেন সেটির জন্য সঠিকভাবে ফর্ম্যাট করা হয়েছে কিনা তা নিশ্চিত করা যায়। এছাড়াও, কোনও অঞ্চল সেট করলে এটি নিশ্চিত করা যায় যে, মার্কিন যুক্তরাষ্ট্রের বাইরে ব্যবহার করা অ্যাপের আচরণ আপনার সেট করা অঞ্চলের প্রতি পক্ষপাতদুষ্ট হবে। কাজ করে এমন ভাষা ও অঞ্চলের সম্পূর্ণ তালিকা দেখতে Google Maps Platform কভারেজ সংক্রান্ত বিবরণ দেখুন এবং region প্যারামিটার ব্যবহার সম্পর্কে আরও জানুন।

এরপরে, পৃষ্ঠায় ম্যাপ প্লেস করার জন্য আপনার একটি HTML div প্রয়োজন। এই জায়গায় ম্যাপ দেখানো হবে।

<div id="map"></div>

পরবর্তী ধাপে আপনার ম্যাপের প্রাথমিক কার্যকারিতা সেট করতে হবে। এটি স্ক্রিপ্ট URL-এ নির্দিষ্ট করা initMap স্ক্রিপ্ট ফাংশনে করা হয়। এই স্ক্রিপ্টে, নিচের উদাহরণে দেখানো হয়েছে, আপনি প্রাথমিক লোকেশন, একটি ম্যাপ আইডি (উন্নত মার্কার ও ক্লাউড-ভিত্তিক ম্যাপ স্টাইলিংয়ের জন্য প্রয়োজনীয়), ম্যাপের ধরন এবং আপনার ব্যবহারকারীদের জন্য ম্যাপে কোন কন্ট্রোল উপলভ্য থাকবে তা সেট করতে পারবেন। মনে রাখবেন যে getElementById() আগের উদাহরণে "map" div ID-কে রেফার করা হয়েছে।

function initMap() {
  const map = new google.maps.Map(document.getElementById("map"), {
    zoom: 12,
    center: { lat: 51.485925, lng: -0.129500 },
    mapId: "DEMO_MAP_ID",
    zoomControl: false
  });
}

লোকেটরের ক্ষেত্রে, আপনি সাধারণত প্রাথমিক লোকেশন, সেন্টার পয়েন্ট বা বাউন্ড এবং জুম লেভেল (সেই লোকেশনে ম্যাপ কতটা জুম করা হয়েছে) সেট করতে আগ্রহী হন। কন্ট্রোল টিউনিংয়ের মতো বেশিরভাগ এলিমেন্ট ঐচ্ছিক, কারণ আপনি ম্যাপের সাথে ইন্টার‍্যাকশনের লেভেল নির্ধারণ করেন।

প্লেস আইডি পাওয়া

এই উদাহরণে এগুলি ব্যবহার করা হয়েছে: Places API (নতুন) এছাড়াও উপলভ্য: JavaScript

আপনার লোকেশনের একটি ডেটাবেস থাকতে পারে, যেখানে সেই লোকেশনের নাম, ঠিকানা ও ফোন নম্বরের মতো প্রাথমিক তথ্য থাকে। Google Maps Platform-এর কাছে সেই জায়গা সম্পর্কে থাকা তথ্য, যেমন ভৌগোলিক কোঅর্ডিনেট ও ব্যবহারকারীর কন্ট্রিবিউট করা তথ্য পেতে, আপনার ডেটাবেসে থাকা প্রতিটি লোকেশনের সাথে সম্পর্কিত প্লেস আইডি খুঁজুন। আপনি Places API (নতুন)-এর মধ্যে টেক্সট সার্চ (নতুন) এন্ডপয়েন্টে কল করতে পারেন এবং ফিল্ড মাস্কে শুধুমাত্র places.id ফিল্ডের জন্য অনুরোধ করতে পারেন (যা Text Search Essentials IDs Only SKU ট্রিগার করে)। Google-এর লন্ডন অফিসের জন্য প্লেস আইডি অনুরোধ করার একটি উদাহরণ এখানে দেওয়া হল:

curl -X POST -d '{
  "textQuery" : "Google London"
}' \
-H 'Content-Type: application/json' \
-H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: places.id' \
'https://places.googleapis.com/v1/places:searchText'

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

আপনার লোকেশন জিওকোডিং করা

এই উদাহরণে এগুলি ব্যবহার করা হয়েছে: Geocoding API এছাড়াও উপলভ্য: JavaScript

আপনার লোকেশন ডেটাবেসে রাস্তার ঠিকানা থাকলেও ভৌগোলিক কোঅর্ডিনেট না থাকলে, ম্যাপে মার্কার প্লেস করার উদ্দেশ্যে সেই ঠিকানার অক্ষাংশ ও দ্রাঘিমাংশ পেতে জিওকোডিং API ব্যবহার করুন। আপনি সার্ভার সাইডে আপনার ঠিকানা জিওকোড করতে পারেন, আপনার ডেটাবেসে অক্ষাংশ ও দ্রাঘিমাংশ সেভ করতে পারেন এবং অন্তত প্রতি ৩০ দিনে রিফ্রেশ করতে পারেন।

Google-এর লন্ডন অফিসের জন্য যে প্লেস আইডি রিটার্ন করা হয়েছে তার অক্ষাংশ ও দ্রাঘিমাংশ পাওয়ার জন্য Geocoding API ব্যবহারের একটি উদাহরণ এখানে দেওয়া হল:

https://maps.googleapis.com/maps/api/geocode/json?place_id=ChIJVSZzVR8FdkgRTyQkxxLQmVU&key=YOUR_API_KEY&solution_channel=GMP_guides_locatorplus_v2_a

ম্যাপে লোকেশন যোগ করা

পরবর্তী ধাপ হল ম্যাপে আপনার লোকেশন যোগ করা। এটি সাধারণত ম্যাপে উন্নত মার্কার যোগ করার মাধ্যমে করা হয়, যদিও আপনি ব্যবহার করতে পারেন এমন আরও অনেক বিকল্প রয়েছে যেমন ডেটা লেয়ার।

আপনার লোকেশনের অক্ষাংশ ও দ্রাঘিমাংশ পাওয়ার পরে, ম্যাপে কাস্টম টেক্সট গ্লিফ সহ উন্নত মার্কার যোগ করার একটি উদাহরণ এখানে দেওয়া হল:

const pin = new google.maps.marker.PinElement({
  glyphText: "A",
});

const marker = new google.maps.marker.AdvancedMarkerElement({
  map,
  position: { lat: 51.493073, lng: -0.146550 },
  title: "Location Name",
});
marker.append(pin);

কয়েকটি মার্কারের সাহায্যে, আপনি একসাথে একাধিক লোকেশন দেখতে পাবেন।

অনেক লোকেশন থাকলে, আপনি মার্কার ক্লাস্টারিং ইউটিলিটি ব্যবহার করার কথা বিবেচনা করতে পারেন, যা JavaScript, Android বা iOS-এর জন্য উপলভ্য। JavaScript স্টোর লোকেটর GitHub স্যাম্পেলে মার্কার ক্লাস্টারিংয়ের একটি উদাহরণ এখানে দেওয়া হল।

জায়গার বিবরণ প্রদান করা

এই উদাহরণে এগুলি ব্যবহার করা হয়েছে: Maps JavaScript API এছাড়াও উপলভ্য: Places API (নতুন) | Android | iOS

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

জায়গার বিবরণ অনুরোধ করতে, আপনার প্রতিটি লোকেশনের জন্য প্লেস আইডি লাগবে। আপনার লোকেশনের প্লেস আইডি পেতে প্লেস আইডি পাওয়া দেখুন।

জায়গার বিবরণ অনুরোধ করার জন্য ভিডিও দেখতে বড় করুন:

খোলা থাকার সময় পাওয়া

বন্ধ থাকার ব্যাপারে চেক করা

খরচ নিয়ন্ত্রণ করা

নিম্নলিখিত উদাহরণটি প্লেস লাইব্রেরিতে Place class ব্যবহার করে, Maps JavaScript API, জায়গার বিবরণ পেতে এবং সেগুলি InfoWindow-তে যোগ করতে। এই প্রয়োগে খরচ বাঁচানোর কৌশল ব্যবহার করা হয়। এর মাধ্যমে, ব্যবহারকারী আগ্রহ দেখাক বা না দেখাক, সব লোকেশনের জন্য আগে থেকেই বিবরণ সংগ্রহ না করে, ব্যবহারকারী যখন মার্কারের উপর ক্লিক করে বিবরণ দেখার অনুরোধ করেন, শুধুমাত্র তখনই প্লেস বিবরণ সংক্রান্ত অনুরোধ ট্রিগার করা হয়।

     
  const marker = new google.maps.marker.AdvancedMarkerElement({
    map,
    position: { lat: 51.493073, lng: -0.14655 },
    gmpClickable: true,
  });
  const place = new google.maps.places.Place({
    id: "ChIJVSZzVR8FdkgRTyQkxxLQmVU",
  });
  const infowindow = new google.maps.InfoWindow();

  marker.addEventListener("gmp-click", async () => {
    await place.fetchFields({
      fields: ["displayName", "formattedAddress", "rating", "websiteURI"],
    });

    infowindow.setContent(
      "<div><strong>" +
        place.displayName +
        "</strong><br>" +
        place.formattedAddress +
        "<br>" +
        "Rating: " +
        place.rating +
        " stars<br>" +
        place.websiteURI +
        "</div>"
    );

    infowindow.open({
      map,
      anchor: marker,
    });
  });
  
  

৪৫° ভিউ থেকে লোকেশন দেখানো হচ্ছে

এই উদাহরণে এগুলি ব্যবহার করা হয়েছে: Maps JavaScript API এছাড়াও উপলভ্য: Android | iOS

আপনার লোকেশনের উপর থেকে নেওয়া ভিউ ব্যবহারকারীদের দেখালে, সেটি কেমন দেখতে তা তারা আরও স্পষ্টভাবে বুঝতে পারেন, যা তাদের এটি খুঁজে পেতে সাহায্য করে। কোনও ব্যবহারকারী আরও বিবরণ দেখতে একটি লোকেশন বেছে নিলে, ৪৫° কোণ থেকে উপলভ্য স্যাটেলাইট ইমেজারি দেখাতে আপনি সেই লোকেশনটি জুম-ইন করতে পারবেন।

নিচের কোড স্যাম্পেলটি ম্যাপকে হাই জুম লেভেল, মানানসই ম্যাপের ধরন এবং এমন একটি টিল্ট অ্যাঙ্গেলে সেট করে যা উপলভ্য থাকলে ৪৫° ছবি দেখাবে। ৪৫° ইমেজারি উপলভ্যতা সম্পর্কে ডকুমেন্টেশনে ব্যাখ্যা করা হয়েছে।

function seeDetail(location) {
  map.setCenter(location);
  map.setZoom(19);
  map.setMapTypeId(google.maps.MapTypeId.HYBRID);
  map.setTilt(45);
}

আসল ম্যাপ ভিউতে রিসেট করা

ব্যবহারকারীরা প্রায়ই একটি লোকেশনের বিস্তারিত ভিউ এবং আশেপাশের একাধিক লোকেশনের সারসংক্ষেপ ভিউয়ের মধ্যে পরিবর্তন করতে চান। এটি সহজ করতে, ব্যবহারকারী ম্যাপ ইন্টার‍্যাকশন বা তালিকা ভিউতে বিবরণ ভিউ ছেড়ে বেরিয়ে গেলে তা শনাক্ত করতে একটি লিসনার যোগ করুন। যেমন, map অবজেক্টে zoom_changed ইভেন্ট শোনা থেকে বোঝা যায় যে ব্যবহারকারী হয় ম্যানুয়ালি বিস্তারিত ভিউ থেকে জুম-আউট করেছেন অথবা অন্য কোনও ফাংশন কল করেছেন যা জুম লেভেল আপডেট করেছে। এই নমুনাতে, জুম-আউট করলে ম্যাপটি আসল ম্যাপের ধরন ও টিল্টে রিসেট হয়ে যায়।

let originalMapTypeId = google.maps.MapTypeId.ROADMAP;
map.addListener("zoom_changed", () => {
  const newZoom = map.getZoom()!;

  if (newZoom < 19) {
    map.setTilt(0);
    map.setMapTypeId(originalMapTypeId);
  }
});

আপনার ব্যবহারকারীর লোকেশন শনাক্ত করা

এই উদাহরণে এগুলি ব্যবহার করা হয়েছে: Maps JavaScript API এছাড়াও উপলভ্য: Android | iOS

যেকোনও লোকেটর সিস্টেমের পরবর্তী গুরুত্বপূর্ণ কম্পোনেন্ট হল আপনার ব্যবহারকারীর শুরুর লোকেশন শনাক্ত করা। সাধারণত, ব্যবহারকারীর বর্তমান লোকেশনকে অরিজিন হিসেবে সেট করার জন্য ব্যবহারকারীর অনুমতি চেয়ে আপনি মোবাইল লোকেশন পরিষেবা ও ওয়েব ব্রাউজার জিওলোকেশন ব্যবহার করতে পারবেন। তবে, ব্যবহারকারী সেইসব অনুমতি প্রত্যাখ্যান করতে পারেন অথবা তার শুরুর পয়েন্ট হিসেবে অন্য লোকেশন সেট করতে চাইতে পারেন।

আজকের ব্যবহারকারীরা Google Maps-এর গ্রাহক ভার্সনে অটোফিল টাইপ-এহেড ফাংশনালিটির সাথে অভ্যস্ত। মোবাইল ডিভাইস ও ওয়েবে Google Maps Platform Places লাইব্রেরি ব্যবহার করে যেকোনও অ্যাপ্লিকেশনে এই কার্যকারিতা ইন্টিগ্রেট করা যেতে পারে। কোনও ব্যবহারকারী ঠিকানা টাইপ করলে, উইজেট ব্যবহার করে অটোকমপ্লিট বাকি অংশটি পূরণ করে দেয়। এছাড়াও, আপনি সরাসরি প্লেস অটোকমপ্লিট ডেটা API ব্যবহার করে আপনার নিজস্ব অটোকমপ্লিট ফাংশনালিটি প্রদান করতে পারবেন।

আপনার সাইটে Place Autocomplete লাইব্রেরি যোগ করা মানে Maps JavaScript API স্ক্রিপ্ট URL-এ কয়েকটি কোয়েরি প্যারামিটার যোগ করা। নিচের উদাহরণে, যোগফল হল libraries=places,marker।

<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=places,marker&callback=initMap&solution_channel=GMP_guides_locatorplus_v2_a" defer></script>

এরপরে, আপনার পৃষ্ঠায় একটি কন্টেনার এলিমেন্ট যোগ করুন যেখানে PlaceAutocompleteElement উইজেট যোগ করা হবে।

<div id="autocomplete-container"></div>

সবশেষে, PlaceAutocompleteElement উইজেট ইনিশিয়ালাইজ করুন এবং এটিকে কন্টেনারে অ্যাপেন্ড করুন। includedPrimaryTypes: ["geocode"]-এর মাধ্যমে প্লেস অটোকমপ্লিট প্রেডিকশন সীমাবদ্ধ করলে, উইজেটটি রাস্তা, পাড়া-প্রতিবেশী, শহর ও পিন কোড গ্রহণ করার জন্য কনফিগার করা হয়, যাতে ব্যবহারকারীরা নিজেদের উৎস বর্ণনা করার জন্য যেকোনও লেভেলের স্পেসিফিকেশন ইনপুট করতে পারেন। কোনও ব্যবহারকারী কোনও পূর্বানুমান বেছে নিলে, gmp-select ইভেন্ট ফায়ার হয় এবং আপনি place.fetchFields() কল করে ব্যবহারকারীর অরিজিনের অক্ষাংশ ও দ্রাঘিমাংশ থাকা location ফিল্ডের অনুরোধ করতে পারেন। ম্যাপ রিসেন্টার করতে এবং অরিজিনের সাথে আপনার লোকেশনের সম্পর্ক বোঝাতে আপনি এই ম্যাপ কোঅর্ডিনেট ব্যবহার করবেন।

  // Create the PlaceAutocompleteElement, restricting predictions to
  // geographical location types in the United Kingdom.
  const placeAutocomplete = new google.maps.places.PlaceAutocompleteElement({
    includedPrimaryTypes: ["geocode"],
    includedRegionCodes: ["gb"],
  });
  placeAutocomplete.placeholder = "Enter starting address, city, or zip code";
  document.getElementById("autocomplete-container").appendChild(placeAutocomplete);

  // When the user selects an address from the drop-down,
  // zoom to the selected location and add an advanced marker.
  placeAutocomplete.addEventListener("gmp-select", async ({ placePrediction }) => {
    const place = placePrediction.toPlace();
    await place.fetchFields({
      fields: ["location", "formattedAddress"],
    });
    addUserLocation(place);
  });
}

এই উদাহরণে, ব্যবহারকারী ঠিকানা বেছে নেওয়ার পরে, addUserLocation() ফাংশনটি এক্সিকিউট করা হয়। এর ফলে মিলে যাওয়া ফলাফলের লোকেশনটি নেওয়া হয়, ম্যাপটি সেই লোকেশনে সরানো হয় এবং একটি উন্নত মার্কার যোগ করা হয়।

function addUserLocation(place) {
  const pin = new google.maps.marker.PinElement({
    glyphText: "C",
  });

  // Add an advanced marker to the map.
  const marker = new google.maps.marker.AdvancedMarkerElement({
    map,
    position: place.location,
  });
  marker.append(pin);

  // Pan and zoom the map to the marker.
  map.panTo(place.location);
  map.setZoom(12);
}

আপনি তারপরে ব্যবহারকারী ও কোনও নির্দিষ্ট লোকেশনের মধ্যে সম্পর্ক দেখতে পাবেন, যা নিম্নলিখিত ছবিতে দেখানো হয়েছে।

আপনার অ্যাপে Place অটোকমপ্লিট যোগ করার ভিডিও ওয়াকথ্রু দেখতে এটি বড় করুন:

ওয়েবসাইট

Android অ্যাপ

iOS অ্যাপ

সবচেয়ে কাছের লোকেশনে পৌঁছানোর জন্য প্রয়োজনীয় সময় ও দূরত্ব দেখানো হচ্ছে

এই উদাহরণে এগুলি ব্যবহার করা হয়েছে: Routes API এছাড়াও উপলভ্য: Routes Library, Maps JavaScript API

ব্যবহারকারীর লোকেশন পাওয়ার পরে, আপনার লোকেশনের সাথে এটি তুলনা করতে পারবেন। Routes API-এর কম্পিউট রুট ম্যাট্রিক্স ফিচারের (অথবা Routes Library, Maps JavaScript API-এর RouteMatrix ক্লাস) সাহায্যে এটি করলে, ড্রাইভিং সময় বা রাস্তার দূরত্ব অনুসারে আপনার ব্যবহারকারীরা সবচেয়ে সুবিধাজনক লোকেশন বেছে নিতে পারবেন।

কোনও ব্যবহারকারীর কাছাকাছি লোকেশন দেখানোর অর্থ হল, আপনার লোকেশন আগে থেকেই পূরণ করা আছে। আপনার নিজস্ব লোকেশন ডেটাবেস ব্যবহার করার সময়, ডেটা এমন ফর্ম্যাটে আছে কিনা তা নিশ্চিত করতে হবে যা ম্যাপে ব্যবহার করা যায়, যেমন, ডেটা লেয়ার বিষয়ে GeoJSON-এর বিবরণ দেওয়া আছে।

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

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

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

curl -X POST -d '{
  "origins": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 51.493490,
            "longitude": -0.097288
          }
        }
      }
    }
  ],
  "destinations": [
    {
      "waypoint": {
        "placeId": "ChIJVSZzVR8FdkgRTyQkxxLQmVU"
      }
    },
    {
      "waypoint": {
        "placeId": "ChIJVSZzVR8FdkgR-HklrBMO0Hc"
      }
    },
    {
      "waypoint": {
        "placeId": "ChIJ4abvVDwbdkgRDZVFR7A6Bcc"
      }
    }
  ],
  "travelMode": "DRIVE",
  "routingPreference": "TRAFFIC_AWARE"
}' \
-H 'Content-Type: application/json' \
-H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status,condition' \
'https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix'

পরিষেবার উত্তর প্রতিটি সোর্স ও ডেস্টিনেশন পেয়ারের দূরত্ব (মিটারে) ও সময়সীমা দেখায়, যা নিচে দেখানো উদাহরণের মতো:

উত্তরের নমুনা দেখতে বড় করে দেখুন:

[
  {
    "originIndex": 0,
    "destinationIndex": 0,
    "status": {},
    "distanceMeters": 4540,
    "duration": "924s",
    "condition": "ROUTE_EXISTS"
  },
  {
    "originIndex": 0,
    "destinationIndex": 1,
    "status": {},
    "distanceMeters": 5043,
    "duration": "1044s",
    "condition": "ROUTE_EXISTS"
  },
  {
    "originIndex": 0,
    "destinationIndex": 2,
    "status": {},
    "distanceMeters": 6919,
    "duration": "1357s",
    "condition": "ROUTE_EXISTS"
  }
]

নিচের ছবিতে ম্যাপে সোর্স (লাল মার্কার C) ও গন্তব্য দেখানো হয়েছে:

ছবিতে একটি শহরের ম্যাপ দেখানো হয়েছে, যেখানে ব্যবহারকারীর লোকেশন লাল মার্কার
               এবং তার আশেপাশের লোকেশন সবুজ মার্কার হিসেবে দেখানো হয়েছে।

নিচের সারণীতে দেখানো হয়েছে যে সরলরেখায় দূরত্ব ও রুট দূরত্ব প্রায়ই আলাদা হয়।

লোকেশন সরাসরি দূরত্ব ট্রাফিক / সময় অনুযায়ী রাস্তা
লোকেশন ক ৩.৩২ কিমি ৪.৫ কিমি / ১৫ মিনিট
লোকেশন 'খ' ৩.২০ কিমি ৫.০ কিমি / ১৭ মিনিট
লোকেশন C ৪.৮৪ কিমি ৬.৯ কিমি / ২৩ মিনিট

যদিও লোকেশন 'খ' দূরত্ব অনুযায়ী সবচেয়ে কাছে, কিন্তু সেখানে পৌঁছানোর রুট ও সময় বেশি লাগে কারণ লোকেশন 'ক' হাইওয়ে দিয়ে অ্যাক্সেস করা যায়।

এই অনুরোধ করার পরে, আপনি ড্রাইভিংয়ের সময়সীমা অনুযায়ী উত্তর সাজাতে ম্যাচ প্রসেস করতে পারবেন। আপনি locator codelab-এ এই ধরনের ফাংশনের উদাহরণ দেখতে পাবেন।

এই উদাহরণে এগুলি ব্যবহার করা হয়েছে: Routes Library, Maps JavaScript API এছাড়াও উপলভ্য: Routes API Android ও iOS-এ ব্যবহারের জন্য ওয়েব পরিষেবা, সরাসরি অ্যাপ্লিকেশন থেকে অথবা রিমোটলি সার্ভার প্রক্সির মাধ্যমে

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

Routes Library, Maps JavaScript API-তে Route ক্লাস এছাড়াও createPolylines() ও createWaypointAdvancedMarkers()-এর মতো পদ্ধতি আছে যা আপনাকে ফলাফল প্রসেস করতে এবং ম্যাপে দেখাতে দেয়।

ম্যাপে কোনও রুটের অনুরোধ করা ও তা দেখানোর একটি উদাহরণ নিচে দেওয়া হল। স্যাম্পেল সম্পর্কে আরও তথ্য জানতে, দেখুন রুট পান।

এইসব Maps ফিচার সম্পর্কে আরও জানতে, Maps JavaScript API ডকুমেন্টেশন পড়ুন অথবা লোকেটর তৈরি করতে ধাপে ধাপে কোডল্যাব দেখুন।

ব্যবহারকারীদের অ্যাপয়েন্টমেন্ট বুক করতে সাহায্য করা

ব্যবহারকারীরা সাইড প্যানেলে আপনার লোকেশনের স্থান সম্পর্কিত বিবরণ দেখলে, আপনি বোতামে ক্লিক করে অ্যাপয়েন্টমেন্ট বুক করার সুবিধা অফার করতে পারবেন, যা নিম্নলিখিত চিত্রে দেখানো হয়েছে।

এটি চালু করার একাধিক উপায় আছে: (১) এই কার্যকারিতা বক্সের বাইরে প্রদান করতে, 'দ্রুত বিল্ডার লোকেটর প্লাস' সমাধান ব্যবহার করা এবং (২) আপনার Business Profile ব্যবহার করা। এই বিভাগে এইসব বিকল্পের ব্যাপারে বিস্তারিত বর্ণনা করা হয়েছে।

'দ্রুত বিল্ডার লোকেটর প্লাস' ব্যবহার করা

আপনার Business Profile থেকে ব্যবসা সংক্রান্ত বিবরণ দ্রুত ইমপোর্ট করতে, আপনি Quick Builder Locator Plus সলিউশন ব্যবহার করতে পারবেন। 'কুইক বিল্ডার' টুলে ইমপোর্ট করা হয়ে গেলে, উপলভ্য হলে, আপনি এম্বেড করা অ্যাপয়েন্টমেন্ট বুকিং লিঙ্ক চালু করতে পারবেন। এটি করতে, আপনার ব্যবসার লোকেশনের জন্য Reserve with Google ব্যবহার করুন। এমনকি Google অ্যাকাউন্টের সাথে যুক্ত কোনও Business Profile না থাকলেও, আপনি এখনও Quick Builder ব্যবহার করে, Reserve with Google*-এর মাধ্যমে থার্ড-পার্টি বুকিং প্রদানকারীর সাথে আগে থেকেই চালু করা ব্যবসার জন্য বুকিং লিঙ্ক এম্বেড করতে পারবেন।

Reserve with Google-এর মাধ্যমে স্টোর লোকেটর টুলে অ্যাপয়েন্টমেন্ট বুকিং লিঙ্ক চালু করা
আপনার স্টোর লোকেটর টুলে বুকিং করার সুবিধা যোগ করুন

*Reserve with Google শুধুমাত্র নির্দিষ্ট কিছু দেশ/অঞ্চলে উপলভ্য যেখানে ব্যবসাগুলি মানানসই বুকিং পরিষেবা প্রদানকারীর সাথে কাজ করে। আপনি Reserve with Google-এ আগ্রহী হলেও, Reserve with Google পার্টনারের সাথে কাজ না করলে, আপনার প্রদানকারীকে এই আগ্রহসূচক ফর্ম পূরণ করে আগ্রহ জমা দিতে বলুন এবং কীভাবে শুরু করতে হবে তা জানতে আমাদের ডকুমেন্টেশন দেখুন। আপনি যদি আগে থেকেই কোনও বুকিং পরিষেবা প্রদানকারীর সাথে কাজ না করে থাকেন, তাহলে আপনি Business Profile ম্যানেজার-এর মধ্যে বুকিং বিভাগে উপযুক্ত পরিষেবা প্রদানকারীদের দেখতে পাবেন।

অ্যাপয়েন্টমেন্ট বুকিং চালু করতে Business Profile ব্যবহার করা

আপনি Business Profile-এর মাধ্যমে নিজের অনলাইন উপস্থিতি ম্যানেজ করলে, আপনার তৈরি করা ব্যবসার লোকেশন, Google Maps Platform প্লেস আইডির সাথে যুক্ত থাকে, এর ফলে ব্যবসার ডেটা সহ ইন্টিগ্রেটেড ম্যাপিং ফাংশনালিটি চালু করা যায়।

Business Profile API আপনাকে অ্যাপয়েন্টমেন্ট বুকিংয়ের মতো অ্যাকশন তৈরি করতে দেয়, যা আপনি নিজের অ্যাপে রিট্রিভ ও সারফেস করতে পারেন, তবে এটি চালু করার জন্য কিছু ম্যানুয়াল ধাপ অনুসরণ করতে হয়, যা নিচে বর্ণনা করা হয়েছে।

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

  1. APPOINTMENT, ONLINE_APPOINTMENT, বা DINING_RESERVATION ধরনের লোকেশনের জন্য Business Profile API placeActionLink তৈরি করুন। সাইড প্যানেলে অ্যাপয়েন্টমেন্ট লিঙ্কের জন্য আপনি যে অবজেক্ট ব্যবহার করবেন সেটি হল placeActionLink। (আপনি যদি ইতিমধ্যেই আপনার পছন্দের অ্যাপয়েন্টমেন্ট অ্যাকশন লিঙ্ক তৈরি করে থাকেন, তাহলে পরবর্তী ধাপে যান।) সফল placeActionLinks.create POST অপারেশন থেকে পাওয়া উত্তরের উদাহরণ এখানে দেওয়া হল:

    {
        "name": "locations/15899957830169237700/placeActionLinks/9c984be778a7ebbc",
        "providerType": "MERCHANT",
        "isEditable": true,
        "uri": "https://example.com/reservation-uri",
        "placeActionType": "DINING_RESERVATION",
        "createTime": "2021-05-01T01:17:41.609161Z",
        "updateTime": "2021-05-01T01:17:41.609161Z"
    }
  2. Google Maps Platform প্লেস আইডির সাথে যুক্ত Business Profile লোকেশন খুঁজুন।

    ব্যবহারকারীরা যখন কোনও জায়গার বিবরণ দেখেন, তখন তারা Google Maps Platform প্লেস আইডির বিবরণ দেখেন। প্লেস আইডি Business Profile লোকেশন আইডির সাথে যুক্ত থাকে, তাই আপনার তৈরি করা অ্যাপয়েন্টমেন্ট বুকিং লিঙ্কটি পেতে ও দেখাতে আপনাকে ম্যাপ প্লেস আইডির উপর ভিত্তি করে লোকেশন আইডি খুঁজে নিতে হবে। নিম্নলিখিত Business Profile API কল করুন:

    1. আপনার প্রোজেক্টের অ্যাকাউন্ট তালিকাভুক্ত করুন।
    2. অ্যাকাউন্টের মধ্যে সব লোকেশনের তালিকা দেখাও।
    3. অ্যাকাউন্ট লোকেশনে, LocationKey Google Maps Platform প্লেস আইডি থাকে, যেটি আপনি দেখা লোকেশনের প্লেস আইডির সাথে তুলনা করতে পারেন।
  3. লোকেশন আইডির সাহায্যে, আপনি পছন্দসই অ্যাকশন লিঙ্ক পেতে পারেন। আগে থেকে থাকা অ্যাপয়েন্টমেন্ট placeActionLink, আগে থেকে থাকা placeActionLinks লোকেশনের জন্য তালিকা পেতে এবং placeActionType ফিল্টার করে আপনি যে অ্যাপয়েন্টমেন্ট লিঙ্ক ব্যবহার করতে চান সেটি খুঁজে পেতে (APPOINTMENT, ONLINE_APPOINTMENT, বা DINING_RESERVATION)।

    নিচের উদাহরণে LIST কল থেকে পাওয়া উত্তরে APPOINTMENT placeActionLink দেখানো হয়েছে ।

     {
       "placeActionLinks": [
           {
               "name": "locations/15899957830169237700/placeActionLinks/9c984be778a7ebbc",
               "providerType": "MERCHANT",
               "isEditable": true,
               "uri": "https://example.com/",
               "placeActionType": "APPOINTMENT",
               "createTime": "2021-05-01T01:17:41.609161Z",
               "updateTime": "2021-05-01T01:17:41.609161Z"
           }
       ]
     }
  4. সাইড প্যানেলে <div> তৈরি ও পূরণ করুন এবং এর মধ্যে placeActionLink অবজেক্ট থেকে প্রাসঙ্গিক ডেটা, বিশেষ করে অ্যাপয়েন্টমেন্ট বুকিং লিঙ্কের URI যোগ করুন।

অ্যাপয়েন্টমেন্ট লিঙ্ক যোগ করার অন্যান্য বিকল্প

আপনি Business Profile ম্যানেজ না করলে অথবা 'দ্রুত বিল্ডার' লোকেটর প্লাস সলিউশন ব্যবহার করতে না চাইলে, কোনও ওয়েবসাইট বা অ্যাপে বুকিং উইজেট এম্বেড করা সংক্রান্ত ডকুমেন্টেশনের জন্য আপনার অ্যাপয়েন্টমেন্ট বুকিং প্ল্যাটফর্ম চেক করুন। আরেকটি বিকল্প হল Google Cloud ব্যবহার করা, যেমন ইনভেনটরি ম্যানেজমেন্টের জন্য Cloud Spanner (ভিডিও)।

স্থানীয় অফার দেখানো

কোনও লোকেশনের জন্য 'জায়গার বিবরণ' সাইড প্যানেলে, ব্যবহারকারীদের ক্লিক করার জন্য আপনি স্থানীয় অফার দেখাতে পারবেন। Google My Business API আপনাকে "পোস্ট" (যেমন, স্থানীয় অফার) তৈরি ও রিট্রিভ করতে দেয়, যা আপনার লোকেশনের সাথে অ্যাসোসিয়েট করা থাকে। নিচের ছবিতে কোনও জায়গার বিবরণের সাইড প্যানেলে স্থানীয় অফারের একটি উদাহরণ দেখানো হয়েছে।

(দ্রুত বিল্ডার বিভাগে আর্কিটেকচারাল ডায়াগ্রাম আপনার লোকেটরকে অফার যোগ করার জন্য উপলভ্য টেকনোলজি দেখায়।)

যেহেতু স্থানীয় অফার লোকেশনের সাথে যুক্ত থাকে, তাই আপনাকে Business Profile লোকেশন আইডি খুঁজে বের করতে হবে যা Google Maps Platform-এর সেই লোকেশনের প্লেস আইডির সাথে যুক্ত যেটি ব্যবহারকারীরা দেখছেন। আপনার কাছে Business Profile লোকেশন আইডি থাকলে, আপনি প্রাসঙ্গিক অফারটি localPost হিসেবে পুনরুদ্ধার করতে পারবেন যা আপনার স্থান সম্পর্কিত বিবরণের সাইড প্যানেলে দেখানো হবে। এখানে ধাপগুলি দেওয়া হল:

  1. Google My Business API-এর সাহায্যে, আপনি দেখাতে চান এমন OFFER ধরনের যেকোনও অফার পোস্ট তৈরি করুন।
  2. ম্যাপে থাকা প্লেস আইডির সাথে যুক্ত Business Profile লোকেশন / লোকেশন আইডি খুঁজুন।

    ব্যবহারকারীরা যখন কোনও জায়গার বিবরণ দেখেন, তখন তারা Google Maps Platform প্লেস আইডির বিবরণ দেখেন। প্লেস আইডি Business Profile লোকেশন আইডির সাথে যুক্ত থাকে, তাই আপনাকে ম্যাপ প্লেস আইডির উপর ভিত্তি করে লোকেশন আইডি খুঁজে বের করতে হবে, যাতে আপনার লোকেশনের স্থানীয় অফারের লিঙ্কটি পাওয়া যায় এবং দেখানো যায়। নিম্নলিখিত Business Profile API কল করুন:

    1. আপনার প্রোজেক্টের অ্যাকাউন্ট তালিকাভুক্ত করুন।
    2. অ্যাকাউন্টের মধ্যে থাকা সব লোকেশন তালিকাভুক্ত করো।
    3. অ্যাকাউন্ট লোকেশনে, LocationKey ম্যাপের প্লেস আইডি থাকে, যা আপনি সেই লোকেশনের প্লেস আইডির সাথে তুলনা করতে পারেন যেটি দেখা হচ্ছে।

    নিচে Business Profile API-তে কোনও লোকেশনের বিবরণের জন্য অনুরোধের একটি উদাহরণ দেওয়া হল:

    https://mybusiness.googleapis.com/v4/accounts/111098884960588804666/locations/15899957830169237700

    উত্তরে একটি locationKey ফিল্ড থাকে, এটি হল প্লেস আইডি যা আপনি Google Maps Platform অনুরোধের সাথে ব্যবহার করতে পারেন।

    উত্তরের নমুনা দেখতে বড় করুন।

          {
        "name": "accounts/111098884960588804666/locations/15899957830169237700",
        "locationName": "Sushi Sushi",
        "primaryPhone": "+49 2222 22222",
        "primaryCategory": {
            "displayName": "Restaurant",
            "categoryId": "gcid:restaurant",
        },
        "regularHours": {
            "periods": [
                {
                    "openDay": "MONDAY",
                    "openTime": "09:00",
                    "closeDay": "MONDAY",
                    "closeTime": "09:10"
                },
                {
                    "openDay": "TUESDAY",
                    "openTime": "11:30",
                    "closeDay": "TUESDAY",
                    "closeTime": "24:00"
                }
            ]
        },
        "locationKey": {
            "placeId": "ChIJs4wtL04X2jERbc8qHd_wZzk",
            "requestId": "2c72cbcb-ea2e-4d66-b684-0ef5f090300c"
        },
        "latlng": {
            "latitude": 1.3670033,
            "longitude": 103.8556385
        },
        "openInfo": {
            "status": "OPEN",
            "canReopen": true
        },
        "locationState": {
            "isGoogleUpdated": true,
            "canUpdate": true,
            "canDelete": true,
            "isVerified": true,
            "isPublished": true,
            "canHaveFoodMenus": true
        },
        "attributes": [
            {
                "attributeId": "has_delivery",
                "valueType": "BOOL",
                "values": [
                    false
                ]
            },
            {
                "attributeId": "requires_masks_customers",
                "valueType": "BOOL",
                "values": [
                    true
                ]
            },
            {
                "attributeId": "url_order_ahead",
                "valueType": "URL",
                "urlValues": [
                    {
                        "url": "https://example.com/"
                    },
                ]
            },
            {
                "attributeId": "pay_credit_card_types_accepted",
                "valueType": "REPEATED_ENUM",
                "repeatedEnumValue": {
                    "setValues": [
                        "visa"
                    ],
                    "unsetValues": [
                        "american_express"
                    ]
                }
            }
        ],
        "address": {
            "regionCode": "SG",
            "languageCode": "en-US",
            "postalCode": "560445",
            "addressLines": [
                "445 Ang Mo Kio Ave 10"
            ]
        },
        "profile": {
            "description": "Example restaurant"
        }
    }
          
  3. এখন আপনার কাছে লোকেশন আইডি আছে, আপনি যে অফার চান সেটি পেতে পারবেন। আগে থেকে থাকা অফার পোস্ট রিট্রিভ করতে, লোকেশনের জন্য আগে থেকে থাকা localPosts-এর তালিকা তৈরি করুন এবং topicType-এর OFFER ফিল্টার করে আপনি যে অফার কন্টেন্ট ব্যবহার করতে চান সেটি খুঁজে নিন।

    কোনও লোকেশনের জন্য অ্যাক্টিভ লোকাল পোস্টের তালিকা তৈরি করার অনুরোধের একটি উদাহরণ এখানে দেওয়া হল:

    https://mybusiness.googleapis.com/v4/accounts/111098884960588804666/locations/15899957830169237700/localPosts

    নিম্নলিখিত উদাহরণে উত্তরের মধ্যে OFFER localPost দেখানো হয়েছে ।

    উত্তরের নমুনা দেখতে বড় করুন।

    {
        "localPosts": [
            {
                "name": "accounts/111098884960588804666/locations/15899957830169237700/localPosts/2524928563578730680",
                "languageCode": "en",
                "summary": "Buy One Get One Free on all order-ahead bento boxes today!",
                "state": "LIVE",
                "event": {
                    "title": "Bento BOGO",
                    "schedule": {
                        "startDate": {
                            "year": 2020,
                            "month": 1,
                            "day": 20
                        },
                        "startTime": {},
                        "endDate": {
                            "year": 2021,
                            "month": 1,
                            "day": 21
                        },
                        "endTime": {}
                    }
                },
                "updateTime": "2020-09-11T10:56:22.594Z",
                "createTime": "2020-09-11T10:56:22.594Z",
                "searchUrl": "https://local.google.com/place?id=4156539623820808045&use=posts&lpsid=2524928563578730680",
                "media": [
                    {
                        "name": "accounts/111098884960588804666/locations/15899957830169237700/media/localPosts/AF1QipOBQCIf40SbF_PPJxb_zvfCHmaTbv9Zw02PoYPS",
                        "mediaFormat": "PHOTO",
                        "googleUrl": "https://lh3.googleusercontent.com/p/AF1QipOBQCIf40SbF_PPJxb_zvfCHmaTbv9Zw02PoYPS"
                    }
                ],
                "topicType": "OFFER",
                "offer": {
                    "couponCode": "BOGO-JET-CODE",
                    "redeemOnlineUrl": "https://www.example.com/redeem",
                    "termsConditions": "Offer only valid for order-ahead orders placed online."
                }
            },
        ],
    }
            
  4. localPost অবজেক্ট থেকে প্রাসঙ্গিক ডেটা নিয়ে সাইড প্যানেলে একটি <div> তৈরি ও পপুলেট করুন।

আপনার ম্যাপ কাস্টমাইজ করা

আপনি বিভিন্ন উপায়ে ম্যাপের চেহারা ও বিবরণ পরিবর্তন করতে পারবেন। যেমন, আপনি এগুলি করতে পারেন:

  • ডিফল্ট ম্যাপ পিনের পরিবর্তে ব্যবহার করার জন্য আপনার নিজস্ব কাস্টম মার্কার তৈরি করুন।
  • আপনার ব্র্যান্ডের সাথে মানানসই করতে ম্যাপ ফিচারের রঙ পরিবর্তন করুন।
  • আপনি কোন কোন আগ্রহের জায়গা (আকর্ষণীয় স্থান, খাবার, থাকার জায়গা ইত্যাদি) এবং কত ঘন ঘন দেখাবেন তা নিয়ন্ত্রণ করতে পারবেন। এর ফলে, আপনি ব্যবহারকারীদের মনোযোগ নিজের লোকেশনের উপর ফোকাস করতে পারবেন এবং একই সাথে ল্যান্ডমার্ক হাইলাইট করতে পারবেন যা ব্যবহারকারীদের সবচেয়ে কাছের লোকেশনে পৌঁছাতে সাহায্য করে।

কাস্টম ম্যাপ মার্কার তৈরি করা

ডিফল্ট পিন ব্যাকগ্রাউন্ড, বর্ডার বা গ্লিফের রঙ পরিবর্তন করে (যেমন, কোনও লোকেশন খোলা আছে কিনা তা বোঝাতে), মার্কারের পরিবর্তে কাস্টম গ্রাফিক ছবি যেমন আপনার ব্র্যান্ডের লোগো ব্যবহার করে অথবা কাস্টম HTML ও CSS মার্কার তৈরি করে আপনি নিজের উন্নত মার্কার কাস্টমাইজ করতে পারবেন। তথ্য উইন্ডো ব্যবহারকারীদের অতিরিক্ত তথ্য প্রদান করতে পারে, যেমন খোলা থাকার সময়, ফোন নম্বর বা ফটো।

নিচে কাস্টম গ্রাফিক মার্কার ব্যবহার করে এমন একটি নমুনা ম্যাপ দেওয়া হল। (See the source code in the Maps JavaScript API custom graphic markers topic.)

বিস্তারিত তথ্যের জন্য, জাভাস্ক্রিপ্ট (ওয়েব), Android এবং iOS-এর জন্য উন্নত মার্কার ডকুমেন্টেশন দেখুন।

আপনার ম্যাপ স্টাইল করা

Google Maps Platform আপনাকে এমনভাবে ম্যাপের স্টাইল সেট করতে দেয় যা ব্যবহারকারীদের সবচেয়ে কাছের লোকেশন খুঁজে পেতে, সেখানে যত দ্রুত সম্ভব পৌঁছাতে এবং আপনার ব্র্যান্ডকে আরও শক্তিশালী করতে সাহায্য করে। যেমন, আপনার ব্র্যান্ডিংয়ের সাথে মানানসই করতে ম্যাপের রঙ পরিবর্তন করতে পারবেন এবং ব্যবহারকারীদের কাছে দৃশ্যমান আগ্রহের জায়গা কন্ট্রোল করে ম্যাপে মনোযোগ বিক্ষিপ্ত হওয়া কমাতে পারবেন। Google Maps Platform এছাড়াও একাধিক ম্যাপ স্টার্টার টেমপ্লেট প্রদান করে, যার মধ্যে কিছু বিভিন্ন শিল্পের জন্য অপ্টিমাইজ করা হয়েছে, যেমন ভ্রমণ, লজিস্টিক, রিয়েল এস্টেট এবং খুচরা ব্যবসা।

আপনার প্রোজেক্টের Google Cloud Console-এ ম্যাপ স্টাইল পৃষ্ঠায় আপনি ম্যাপ স্টাইল তৈরি বা পরিবর্তন করতে পারবেন।

Cloud Console-এ ম্যাপ স্টাইল তৈরি ও স্টাইলিংয়ের অ্যানিমেশন দেখতে বড় করে দেখুন:

ইন্ডাস্ট্রি ম্যাপ স্টাইল

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

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

আগ্রহের স্থান সংক্রান্ত নিয়ন্ত্রণ

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

ম্যাপ স্টাইল পৃষ্ঠায়, মাউস দিয়ে 'নতুন ম্যাপ স্টাইল তৈরি করুন' বিকল্পে ক্লিক করুন। নতুন ম্যাপ স্টাইল
                পৃষ্ঠায়, 'আপনার নিজস্ব স্টাইল তৈরি করুন' বিকল্পের মধ্যে, Google Map রেডিও বোতাম
                বেছে নেওয়া হয়েছে। মাউস Atlas স্টাইলের জন্য Atlas রেডিও বোতামে ক্লিক করে,
                তারপর স্টাইল এডিটরে খুলুন বিকল্পে ক্লিক করে। স্টাইল এডিটরে, মাউস ক্লিক করে
                আকর্ষণের কেন্দ্র ফিচারটি বেছে নেয়, তারপর আইকন এলিমেন্টে ক্লিক করে, রঙটি
                লাল হিসেবে সেট করে। তারপর মাউসটি POI ডেনসিটি চেকবক্স বেছে নেয় এবং সর্বাধিক ডেনসিটির জন্য ডেনসিটি কন্ট্রোলটি
                ডানদিকে স্লাইড করে। ঘনত্ব বাড়ার সাথে সাথে ম্যাপের প্রিভিউতে
                আরও বেশি লাল মার্কার দেখা যায়। মাউসটি তারপরে
                'সেভ করুন' বোতামে যায়।

প্রতিটি ম্যাপ স্টাইলের নিজস্ব আইডি আছে। Cloud Console-এ কোনও স্টাইল প্রকাশ করার পরে, আপনার কোডে সেই ম্যাপ আইডি রেফারেন্স হিসেবে ব্যবহার করেন—এর অর্থ হল, আপনার অ্যাপ রিফ্যাক্টর না করেই রিয়েল টাইমে ম্যাপের স্টাইল আপডেট করতে পারবেন। নতুন লুক অটোমেটিক বর্তমান অ্যাপ্লিকেশনে দেখা যাবে এবং বিভিন্ন প্ল্যাটফর্ম জুড়ে ব্যবহার করা হবে। Maps JavaScript API ব্যবহার করে কীভাবে ওয়েবপেজে ম্যাপ আইডি যোগ করতে হয় তা নিম্নলিখিত উদাহরণ থেকে দেখুন।

স্ক্রিপ্ট URL-এ এক বা একাধিক map_ids যোগ করার মাধ্যমে, আপনার কোডে সেইসব স্টাইল কল করলে, Maps JavaScript API অটোমেটিক সেইসব স্টাইলকে আরও দ্রুত ম্যাপ রেন্ডার করার জন্য উপলভ্য করে তোলে।

<script
 src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&map_ids=MAP_IDs&callback=initMap&solution_channel=GMP_guides_locatorplus_v2_a">
</script>

নিচের কোডটি ওয়েবপেজে স্টাইল করা ম্যাপ দেখায়। (Not shown is an HTML <div id="map"></div> element where the map will appear on the page.)

map = new google.maps.Map(document.getElementById('map'), {
  center: {lat: 51.485925, lng: -0.129500},
  zoom: 12,
  mapId: '1234abcd5678efgh'
});

ক্লাউড-ভিত্তিক ম্যাপ স্টাইলিং কীভাবে JavaScript (ওয়েব), Android, এবং iOS-এ অন্তর্ভুক্ত করা যায় সেই সম্পর্কে আরও জানুন।

অ্যানালিটিক্সের মাধ্যমে ব্যবহার সংক্রান্ত ইনসাইট পাওয়া

অ্যানালিটিক্স ব্যবহার করে, ব্যবহারকারীরা কীভাবে আপনার লোকেটরের সাথে ইন্টার‍্যাক্ট করছেন সেই সম্পর্কে আপনি মূল্যবান ইনসাইট পেতে পারেন। এই বিভাগে, আপনার সবচেয়ে আগ্রহের ডেটা ট্র্যাক করতে Google Analytics এবং Business Profile Analytics কনফিগার ও মনিটর করার বিষয়ে নির্দেশিকা প্রদান করা হয়েছে। Quick Builder Locator Plus ব্যবহারকারীদের জন্য, অ্যানালিটিক্স ড্যাশবোর্ড আপনাকে ইনসাইট বিশ্লেষণ ও জেনারেট করতে সাহায্য করে, এর ফলে আপনি অ্যানোনিমাস ডেটার উপর ভিত্তি করে আপনার স্টোর লোকেটর ব্যবহারকারীদের সাথে কতটা ভালভাবে এনগেজ হচ্ছে তার একটি ছবি পান।

ব্যবহারকারীর এনগেজমেন্ট ও পারফর্ম্যান্স মেট্রিক দেখানো স্টোর লোকেটর অ্যানালিটিক্স ড্যাশবোর্ড
স্টোর লোকেটর অ্যানালিটিক্স ড্যাশবোর্ড আপনাকে পারফর্ম্যান্স মেট্রিক্স প্রদান করে

এই রিপোর্ট অ্যাক্সেস করতে, Cloud Console-এর এনগেজমেন্ট রিপোর্ট বিভাগে যান। এই রিপোর্ট সম্পর্কে আরও জানতে, এনগেজমেন্ট রিপোর্ট দেখুন।

Google Analytics-এ অনেক ফিচার থাকার কারণে, আমরা সেট-আপ ও ব্যবহার সংক্রান্ত বিস্তারিত তথ্য প্রদান করব না। পরিবর্তে, আমরা আপনাকে আরও পড়ার জন্য মূল ডকুমেন্টেশন এবং আপনার লোকেটর অ্যাপের জন্য মূল অ্যানালিটিক্স সংক্রান্ত বিষয়গুলি হাইলাইট করার সময় নির্দেশাবলী দেখাব।

Google Analytics সেট-আপ করা

আপনি যদি আগে থেকেই নিজের অ্যাপের সাথে Google Analytics ব্যবহার করে থাকেন, তাহলে এই বিভাগটি এড়িয়ে যেতে পারেন।

Google Analytics চালু করতে আপনার সাইটে পেস্ট করা "গ্লোবাল ট্যাগ"-এর একটি উদাহরণ নিচে দেওয়া হল।

<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/
gtag/js?id=G-XR5B5D4NW0"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'G-XR5B5D4NW0');
</script>

আপনি Google Tag Manager ব্যবহার করুন বা সরাসরি আপনার সাইটে Google Analytics যোগ করুন, মূল বিষয় হল, নিম্নলিখিত কাজগুলি করার জন্য আপনার Google Analytics প্রয়োগ কীভাবে ব্যবহার করতে হয় তা বোঝা:

  • ক্লিক করার মতো ব্যবহারকারীর ইন্টার‍্যাকশন ট্রিগার করুন যা ওয়েবসাইট পৃষ্ঠা দেখার (ইভেন্ট) থেকে আলাদাভাবে পরিমাপ করা যেতে পারে।
  • অর্থপূর্ণ গ্রুপিংয়ে (ডাইমেনশন বা কাস্টম ডাইমেনশন) কাঁচা ডেটা (মেট্রিক) দেখুন।

কাস্টম ইভেন্ট ব্যবহার করা

আপনার লোকেটরকে কাস্টম ইভেন্ট হিসেবে সংজ্ঞায়িত করার একটি উদাহরণ নিচে দেওয়া হল:

gtag('event', 'location', {
  'method': 'address'
});

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

আপনি Google Analytics-এ নিম্নলিখিত ট্র্যাকিং কল পাঠাতে পারবেন যা আপনার সংজ্ঞায়িত ইভেন্ট ও মেথড ব্যবহার করে। (আমরা প্রতিটি কোয়েরি প্যারামিটার আলাদা আলাদা লাইনে দেখাব যাতে সেগুলি সহজে পড়া যায়।)

https://www.google-analytics.com/g/collect?v=2
&tid=G-XR5B5D4NW0
>m=2oe550
&_p=64678170
&sr=1920x1200
&ul=fr
&cid=489856786.1598861364
&_s=2
&dl=http%3A%2F%2.storelocator.html
&dt=Store%20Locator
&sid=1620827159
&sct=1
&seg=1
&en=location
&_et=6032
&ep.method=address

নিচের ছবিতে দেখানো হয়েছে যে কীভাবে ব্রাউজারের Inspect ভিউতে, নেটওয়ার্ক ট্যাবে সেই Google Analytics কল দেখা যায়। (বড় করে দেখতে ক্লিক করুন)।

Google Analytics-এ "রিয়েল-টাইম" ভিউ দেখে আপনি যাচাই করতে পারবেন যে আপনার কাস্টম ইভেন্ট ট্যাগ সঠিকভাবে ক্যাপচার করা হচ্ছে কিনা। যেমন, Place Autocomplete-এর জন্য আগে সেট-আপ করা "লোকেশন" ইভেন্ট নিম্নলিখিত ছবিতে দেখানো Google Analytics-এ দেখা যায়।

 

অথবা, আপনি DebugView ব্যবহার করে রিয়েল-টাইম ইভেন্ট মনিটর করতে পারেন, যেমনটি নিম্নলিখিত চিত্রে দেখানো হয়েছে। মনে রাখবেন, Google Analytics-এর এনগেজমেন্ট > ইভেন্ট বিভাগে সম্পূর্ণ ইভেন্ট রিপোর্ট অ্যাক্সেস করার আগে আপনাকে ২৪ ঘণ্টা অপেক্ষা করতে হবে।

এছাড়াও, আপনার লোকেটর অ্যাপ থেকে আপনার অফলাইন লোকেশনগুলিতে আরও বেশি ফুট ট্রাফিক নিয়ে আসার জন্য আপনি কৌশল তৈরি ও পরিমাপ করতে পারবেন। যেমন, Google Analytics-এ একটি Analytics-এ স্টোর ভিজিট অফার আছে যা আপনার লোকেটর অ্যানালিটিক্সের সাথে অফলাইন স্টোর ভিজিট অ্যানালিটিক্স (Google Ads-এর মাধ্যমে পরিমাপ করা হয়) লিঙ্ক করে। এছাড়াও, আপনি নিজের অ্যাপ-টু-লোকেশন স্ট্র্যাটেজি তৈরি করতে পারেন, যেমন আপনার ফিজিক্যাল লোকেশনে রিডিম করা যায় এমন অনলাইন অফার।

Business Profile মেট্রিক

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

Business Profile API-তে পাঠানো নিম্নলিখিত নমুনা অনুরোধে একাধিক ধরনের মেট্রিক চাওয়া হয়েছে। অফারে করা ক্লিক ট্র্যাক করার জন্য, LOCAL_POST_VIEWS_SEARCH এবং LOCAL_POST_ACTIONS_CALL_TO_ACTION মেট্রিক সবচেয়ে প্রাসঙ্গিক হবে।

অনুরোধের নমুনা দেখতে বড় করুন।

POST https://mybusiness.googleapis.com/v4/accounts/111098884960528804666/locations:reportInsights
Body:
{
 "locationNames": [
   "accounts/111098884960528804666/locations/15899957830169237700"
 ],
 "basicRequest": {
         "metricRequests": [
            {
              "metric": "QUERIES_DIRECT"
            },
            {
              "metric": "QUERIES_INDIRECT"
            },
            {
              "metric": "VIEWS_MAPS"
            },
            {
              "metric": "VIEWS_SEARCH"
            },
            {
                "metric": "ACTIONS_DRIVING_DIRECTIONS"
            },
            {
                "metric": "LOCAL_POST_VIEWS_SEARCH"
            },
            {
                "metric": "LOCAL_POST_ACTIONS_CALL_TO_ACTION"
            }
         ],
         "timeRange": {
              "startTime": "2021-01-01T01:01:23.045123456Z",
              "endTime": "2021-04-30T23:59:59.045123456Z"
         }
   }
}

উত্তরের নমুনা দেখতে বড় করুন।

{
   "locationMetrics": [
       {
           "locationName": "accounts/111098884960528804666/locations/15899957830169237700",
           "timeZone": "Asia/Singapore",
           "metricValues": [
               {
                   "metric": "QUERIES_DIRECT",
                   "totalValue": {
                       "metricOption": "AGGREGATED_TOTAL",
                       "timeDimension": {
                           "timeRange": {
                               "startTime": "2021-01-01T01:01:23.045123456Z",
                               "endTime": "2021-04-30T23:59:59.045123456Z"
                           }
                       },
                       "value": "82"
                   }
               },
               {
                   "metric": "QUERIES_INDIRECT",
                   "totalValue": {
                       "metricOption": "AGGREGATED_TOTAL",
                       "timeDimension": {
                           "timeRange": {
                               "startTime": "2021-01-01T01:01:23.045123456Z",
                               "endTime": "2021-04-30T23:59:59.045123456Z"
                           }
                       },
                       "value": "1493"
                   }
               },
               {
                   "metric": "VIEWS_MAPS",
                   "totalValue": {
                       "metricOption": "AGGREGATED_TOTAL",
                       "timeDimension": {
                           "timeRange": {
                               "startTime": "2021-01-01T01:01:23.045123456Z",
                               "endTime": "2021-04-30T23:59:59.045123456Z"
                           }
                       },
                       "value": "1571"
                   }
               },
               {
                   "metric": "VIEWS_SEARCH",
                   "totalValue": {
                       "metricOption": "AGGREGATED_TOTAL",
                       "timeDimension": {
                           "timeRange": {
                               "startTime": "2021-01-01T01:01:23.045123456Z",
                               "endTime": "2021-04-30T23:59:59.045123456Z"
                           }
                       },
                       "value": "631"
                   }
               },
               {
                   "metric": "ACTIONS_DRIVING_DIRECTIONS",
                   "totalValue": {
                       "metricOption": "AGGREGATED_TOTAL",
                       "timeDimension": {
                           "timeRange": {
                               "startTime": "2021-01-01T01:01:23.045123456Z",
                               "endTime": "2021-04-30T23:59:59.045123456Z"
                           }
                       },
                       "value": "3"
                   }
               },
               {
                   "metric": "LOCAL_POST_ACTIONS_CALL_TO_ACTION",
                   "totalValue": {
                       "metricOption": "AGGREGATED_TOTAL",
                       "timeDimension": {
                           "timeRange": {
                               "startTime": "2021-01-01T01:01:23.045123456Z",
                               "endTime": "2021-04-30T23:59:59.045123456Z"
                           }
                       },
                       "value": "42"
                   }
               },
               {
                   "metric": "LOCAL_POST_VIEWS_SEARCH",
                   "totalValue": {
                       "metricOption": "AGGREGATED_TOTAL",
                       "timeDimension": {
                           "timeRange": {
                               "startTime": "2021-01-01T01:01:23.045123456Z",
                               "endTime": "2021-04-30T23:59:59.045123456Z"
                           }
                       },
                       "value": "11"
                   }
               }
           ]
       }
   ]
}

উত্তরে মেট্রিক্স রয়েছে, যার মধ্যে সবচেয়ে গুরুত্বপূর্ণ হল:

  • Google Maps-এ লোকেশনটি ১৫৭১ বার দেখা হয়েছে
  • Google Search-এ ৬৩১টি লোকেশন ভিউ।
  • লোকেশন পর্যন্ত ড্রাইভিং দিকনির্দেশের জন্য ৩টি অনুরোধ।
  • ৪২টি LOCAL_POST_ACTIONS_CALL_TO_ACTION অফারে ক্লিক।
  • Google Search-এ স্থানীয় পোস্টের ১১টি ভিউ।

অন্যান্য মেট্রিক বিকল্পের মধ্যে অ্যাকশন লিঙ্ক তৈরি করতে Reserve with Google ব্যবহার করা অন্তর্ভুক্ত। Reserve with Google-এ তৈরি অ্যাকশন লিঙ্কে ব্যবহারকারীরা ক্লিক করলে, আপনি সেইসব অ্যাকশন Google Analytics-এ লগ করতে পারবেন, যা আপনাকে Google Analytics-এ কনভার্সন ট্র্যাক করতে দেয়। আরও তথ্যের জন্য কনভার্সন ট্র্যাকিং ডকুমেন্টেশন দেখুন।

আপনি যে মেট্রিক স্ট্র্যাটেজি ব্যবহার করুন না কেন, পরিমাপ করা মানে শুধু আপনার KPI-এর তুলনায় কেমন পারফর্ম করছেন তা দেখা নয়। এছাড়াও, এই সংখ্যাগুলি আপনার ব্যবসার উপর লোকেটর উন্নতির প্রভাব বুঝতে সাহায্য করে। এছাড়াও, আপনি Business Profile মেট্রিক্সের সাথে আপনার লোকেটর থেকে Google Analytics-এর মেট্রিক্স তুলনা করতে পারবেন। যেমন, এইসব মেট্রিক তুলনা করে আপনি দেখতে পাবেন যে কতজন গ্রাহক আপনার লোকেশন থেকে দিকনির্দেশ পাচ্ছেন এবং Google Maps-এর মাধ্যমে আপনার ফিজিক্যাল লোকেশনে ভিজিট করছেন।


Locator Plus-কে আরও উন্নত করা

আপনার ব্যবসা বা ব্যবহারকারীর প্রয়োজন অনুযায়ী, আপনি ব্যবহারকারীর অভিজ্ঞতা আরও উন্নত করতে পারবেন।

মোবাইলে দিকনির্দেশ পাঠানো

ব্যবহারকারীদের কোনও লোকেশনে পৌঁছানো আরও সহজ করতে, আপনি তাদের দিকনির্দেশনার লিঙ্ক টেক্সট বা ইমেল করতে পারেন। সেটি ক্লিক করলে, তার ফোনে Google Maps অ্যাপ ইনস্টল করা থাকলে সেটি লঞ্চ হবে অথবা তার ডিভাইসের ওয়েব ব্রাউজারে maps.google.com লোড হবে। এই দুটি অভিজ্ঞতাই ব্যবহারকারীকে গন্তব্যে পৌঁছানোর জন্য, ভয়েস গাইডেন্স সহ, ধাপে ধাপে নেভিগেশন ব্যবহার করার বিকল্প প্রদান করে।

নিম্নলিখিত উদাহরণের মতো দিকনির্দেশ URL কম্পোজ করতে Maps URL ব্যবহার করুন, যেখানে URL-এনকোড করা জায়গার নাম হল destination প্যারামিটার এবং প্লেস আইডি হল destination_place_id প্যারামিটার। Maps URL কম্পোজ বা ব্যবহার করার জন্য কোনও খরচ লাগে না, তাই আপনাকে URL-এ API কী যোগ করতে হবে না।

      https://www.google.com/maps/dir/?api=1&destination=Google%20London&destination_place_id=ChIJVSZzVR8FdkgRTyQkxxLQmVU

আপনি ঐচ্ছিকভাবে গন্তব্যের মতো একই ঠিকানা ফর্ম্যাট ব্যবহার করে একটি origin কোয়েরি প্যারামিটার প্রদান করতে পারেন। তবে এটি বাদ দিলে, দিকনির্দেশ ব্যবহারকারীর বর্তমান লোকেশন থেকে শুরু হয়, যা সেই লোকেশন থেকে আলাদা হতে পারে যেখানে তিনি আপনার Locator Plus অ্যাপ ব্যবহার করছিলেন। Maps URL অতিরিক্ত কোয়েরি প্যারামিটার বিকল্প প্রদান করে, যেমন travelmode এবং নেভিগেশন চালু করে দিকনির্দেশ লঞ্চ করার জন্য dir_action=navigate।

এই ক্লিক করা যায় এমন লিঙ্কটি, উপরের উদাহরণ URL-কে আরও বড় করে, origin -কে লন্ডন ফুটবল স্টেডিয়াম হিসেবে সেট করে এবং travelmode=transit ব্যবহার করে গন্তব্যে পৌঁছানোর জন্য পাবলিক ট্রানজিট সংক্রান্ত দিকনির্দেশ প্রদান করে।

এই URL সহ টেক্সট বা ইমেল পাঠানোর জন্য, আমরা থার্ড-পার্টি অ্যাপ্লিকেশন ব্যবহার করার সাজেশন দিই, যেমন twilio. আপনি App Engine ব্যবহার করলে, এসএমএস মেসেজ বা ইমেল পাঠানোর জন্য থার্ড-পার্টি কোম্পানি ব্যবহার করতে পারবেন। আরও তথ্যের জন্য, থার্ড-পার্টি পরিষেবার মাধ্যমে মেসেজ পাঠানো দেখুন।

ব্যবহারকারীদের লোকেশন ভিজ্যুয়ালাইজ করতে সাহায্য করার জন্য Street View দেখানো

পৃথিবীর অনেক লোকেশনের ক্ষেত্রে, Street View ব্যবহার করে কোনও লোকেশনের বাইরের অংশ দেখানো যেতে পারে। এর ফলে ব্যবহারকারীরা লোকেশনে পৌঁছানোর আগেই সেটির একটি ভিজ্যুয়াল দেখতে পান। আপনি Street View-কে হয় ইন্ট্যার‍্যাক্টিভ (ওয়েব) অথবা স্ট্যাটিক (API) ফর্ম হিসেবে প্রদান করতে পারবেন। এটি নির্ভর করে আপনি চান কিনা যে আপনার ব্যবহারকারীরা কোনও এলাকাকে ৩৬০ ডিগ্রি কোণে "ঘুরে দেখুক"। এছাড়াও, Street View Android ও iOS-এর জন্য উপলভ্য।

জিওলোকেশন ব্যবহার করে ব্যবহারকারীর লোকেশন নির্ধারণ করা

বেশিরভাগ ক্ষেত্রে, ব্যবহারকারীর ডিভাইসে বা ব্রাউজারে বিল্ট-ইন থাকা লোকেশন পরিষেবা ব্যবহার করে আপনি ব্যবহারকারীর লোকেশন সঠিকভাবে চিহ্নিত করতে পারবেন। Google Maps-এ কোনও ব্যবহারকারী বা ডিভাইসের ভৌগোলিক লোকেশন দেখাতে, আমরা ব্রাউজারের HTML5 জিওলোকেশন ফিচার ব্যবহার করার একটি উদাহরণ দিয়েছি এবং Android ও iOS-এ অনুমতি চাওয়া ও লোকেশন পাওয়ার ব্যাপারে ডকুমেন্টেশন আছে। তবে, এমন পরিস্থিতি হতে পারে যেখানে আপনি বিকল্প লোকেশন ফাইন্ডার চান; যেমন, ডিভাইস লোকেশন পরিষেবা বন্ধ করা থাকলে বা ডিভাইস লোকেশন স্পুফ করা হচ্ছে বলে আপনার সন্দেহ হলে।

জিওলোকেশন API হল একটি সার্ভার-সাইড API যা ক্লায়েন্ট শনাক্ত করতে পারে এমন সেল টাওয়ার এবং ওয়াই-ফাই নোড সম্পর্কে তথ্যের ভিত্তিতে লোকেশন এবং নির্ভুলতা রেডিয়াস রিটার্ন করে। ব্যবহারকারীর লোকেশন নির্ধারণ করার জন্য আপনি জিওলোকেশনকে ব্যাক-আপ মেকানিজম হিসেবে ব্যবহার করতে পারেন অথবা ডিভাইসের রিপোর্ট করা লোকেশন ক্রস-চেক করার জন্য এটি ব্যবহার করতে পারেন।

প্লেস বিবরণের সাথে কাস্টম লোকেশন ডেটা একত্রিত করা

আগের জায়গার বিবরণ প্রদান করা বিভাগে, আমরা ব্যবহারকারীদের আপনার লোকেশন সম্পর্কে উন্নত মানের তথ্য দেওয়ার জন্য জায়গার বিবরণ ব্যবহার করার বিষয়টি কভার করেছি, যেমন, খোলা ও বন্ধ হওয়ার সময়, ফটো ও রিভিউ।

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

আপনার কাছে নিজের প্লেস ডেটা থাকতে পারে যা আপনি প্লেসের বিবরণের পরিবর্তে ব্যবহার করতে বা তার সাথে যোগ করতে পারেন। ফুল-স্ট্যাক লোকেটর কোডল্যাব আপনার লোকেশন সংক্রান্ত বিবরণ সেভ ও রিট্রিভ করার জন্য ডেটাবেসের সাথে GeoJSON ব্যবহার করার একটি উদাহরণ প্রদান করে।