Google Analytics-এ পরিমাপ প্রোটোকল ইভেন্টগুলি পাঠান

এই নির্দেশিকাটি ব্যাখ্যা করে কিভাবে আপনি Google Analytics পরিমাপ প্রোটোকল ওয়েব এবং অ্যাপ স্ট্রিম ইভেন্টগুলি একটি Google Analytics সার্ভারে পাঠাতে পারেন, যাতে আপনি আপনার Google Analytics রিপোর্টে পরিমাপ প্রোটোকল ইভেন্টগুলি দেখতে পারেন।

এই নির্দেশিকাটিতে আপনি যে প্ল্যাটফর্মটি দেখতে চান তা চয়ন করুন:

অনুরোধ ফরম্যাট করুন

Google Analytics পরিমাপ প্রোটোকল শুধুমাত্র HTTP POST অনুরোধ সমর্থন করে।

একটি ইভেন্ট পাঠাতে, নিম্নলিখিত বিন্যাস ব্যবহার করুন:

POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>

অনুরোধ URL-এ আপনাকে অবশ্যই নিম্নলিখিতগুলি প্রদান করতে হবে:

  • api_secret : এপিআই সিক্রেট গুগল অ্যানালিটিক্স UI-তে তৈরি হয়।

    একটি নতুন গোপনীয়তা তৈরি করতে, অ্যাডমিন > ডেটা স্ট্রীম > আপনার স্ট্রীম বেছে নিন > পরিমাপ প্রোটোকল > তৈরি করুন এ নেভিগেট করুন।

  • measurement_id : একটি স্ট্রীমের সাথে সম্পর্কিত পরিমাপ আইডি, অ্যাডমিন > ডেটা স্ট্রীম > আপনার স্ট্রীম বেছে নিন > পরিমাপ আইডির অধীনে Google Analytics UI-তে পাওয়া যায়।

    measurement_id আপনার স্ট্রিম আইডি নয়।

সম্পূর্ণ রেফারেন্সের জন্য ক্যোয়ারী প্যারামিটার দেখুন।

আপনাকে অবশ্যই অনুরোধের অংশে নিম্নলিখিতগুলি প্রদান করতে হবে:

  • client_id : একটি ক্লায়েন্টের জন্য একটি অনন্য শনাক্তকারী। এটি একটি Firebase app_instance_id থেকে আলাদা। gtag.js('get') ব্যবহার করুন।
  • user_id : ঐচ্ছিক। ব্যবহারকারীর জন্য একটি অনন্য শনাক্তকারী। শুধুমাত্র UTF-8 অক্ষর থাকতে পারে। এই শনাক্তকারী সম্পর্কে আরও তথ্যের জন্য ক্রস-প্ল্যাটফর্ম বিশ্লেষণের জন্য ব্যবহারকারী-আইডি দেখুন।

  • consent : ঐচ্ছিক। সম্মতি সেটিংস কীভাবে সেট করবেন তা জানুন।

  • timestamp_micros : ঐচ্ছিক। ইউনিক্স যুগের সময়, মাইক্রোসেকেন্ডে, অনুরোধে ইভেন্ট এবং ব্যবহারকারীর বৈশিষ্ট্যের জন্য। নির্দিষ্ট করা না থাকলে, অনুরোধের সময় ডিফল্ট

  • events : ইভেন্ট আইটেম একটি অ্যারে. আপনি একটি অনুরোধে একাধিক ইভেন্ট অন্তর্ভুক্ত করতে পারেন।

    রিয়েলটাইমের মতো প্রতিবেদনে ব্যবহারকারীর কার্যকলাপ প্রদর্শনের জন্য, একটি event জন্য params অংশ হিসেবে engagement_time_msec এবং session_id অবশ্যই সরবরাহ করতে হবে। engagement_time_msec প্যারামিটারটি মিলিসেকেন্ডে ইভেন্টের ব্যস্ততার সময়কে প্রতিফলিত করবে।

    এখানে একটি উদাহরণ:

  {
   "client_id": "123456.7654321",
   "events": [
     {
        "name": "campaign_details",
        "params": {
          "campaign_id": "google_1234",
          "campaign": "Summer_fun",
          "source": "google",
          "medium": "cpc",
          "term": "summer+travel",
          "content": "logolink",
          "session_id": "123",
          "engagement_time_msec": "100"
        }
     }
   ]
  }

যদিও session_start একটি সংরক্ষিত ইভেন্টের নাম , একটি নতুন session_id তৈরি করা হলে session_start পাঠানোর প্রয়োজন ছাড়াই একটি নতুন সেশন তৈরি হয়। সেশনগুলি কীভাবে গণনা করা হয় তা বুঝুন।

চেষ্টা করে দেখুন

এখানে একটি উদাহরণ রয়েছে যা আপনি আপনার Google Analytics সার্ভারে একটি tutorial_begin ইভেন্ট পাঠাতে ব্যবহার করতে পারেন:

const measurement_id = `G-XXXXXXXXXX`;
const api_secret = `<secret_value>`;

fetch(`https://www.google-analytics.com/mp/collect?measurement_id=${measurement_id}&api_secret=${api_secret}`, {
  method: "POST",
  body: JSON.stringify({
    client_id: 'XXXXXXXXXX.YYYYYYYYYY',
    events: [{
      name: 'tutorial_begin',
      params: {},
    }]
  })
});

টাইমস্ট্যাম্প ওভাররাইড করুন

পরিমাপ প্রোটোকল অনুরোধে প্রতিটি ইভেন্টের জন্য নিম্নলিখিত তালিকায় পাওয়া প্রথম টাইমস্ট্যাম্প ব্যবহার করে:

  1. ইভেন্টের timestamp_micros
  2. অনুরোধের timestamp_micros
  3. যে সময় পরিমাপ প্রোটোকল অনুরোধ গ্রহণ করে।

নিম্নলিখিত উদাহরণটি একটি অনুরোধ-স্তরের টাইমস্ট্যাম্প পাঠায় যা অনুরোধের সমস্ত ইভেন্টে প্রযোজ্য। ফলস্বরূপ, পরিমাপ প্রোটোকল tutorial_begin এবং join_group ইভেন্ট উভয়কেই requestUnixEpochTimeInMicros এর একটি টাইমস্ট্যাম্প বরাদ্দ করে।

{
  "timestamp_micros": requestUnixEpochTimeInMicros,
  "events": [
    {
      "name": "tutorial_begin"
    },
    {
      "name": "join_group",
      "params": {
        "group_id": "G_12345",
      }
    }
  ]
}

নিম্নলিখিত উদাহরণটি অনুরোধ-স্তরের টাইমস্ট্যাম্প এবং একটি ইভেন্ট-স্তরের টাইমস্ট্যাম্প উভয়ই পাঠায়। ফলস্বরূপ, পরিমাপ প্রোটোকল tutorial_begin ইভেন্টটিকে tutorialBeginUnixEpochTimeInMicros এর একটি টাইমস্ট্যাম্প এবং join_group ইভেন্টটিকে requestUnixEpochTimeInMicros এর একটি টাইমস্ট্যাম্প নির্ধারণ করে।

{
  "timestamp_micros": requestUnixEpochTimeInMicros,
  "events": [
    {
      "name": "tutorial_begin",
      "timestamp_micros": tutorialBeginUnixEpochTimeInMicros
    },
    {
      "name": "join_group",
      "params": {
        "group_id": "G_12345",
      }
    }
  ]
}

সীমাবদ্ধতা

Google Analytics-এ পরিমাপ প্রোটোকল ইভেন্ট পাঠানোর ক্ষেত্রে নিম্নলিখিত সীমাবদ্ধতাগুলি প্রযোজ্য:

  • অনুরোধে সর্বাধিক 25টি ইভেন্ট থাকতে পারে।
  • ইভেন্টে সর্বাধিক 25টি প্যারামিটার থাকতে পারে।
  • ইভেন্টে সর্বাধিক 25টি ব্যবহারকারীর বৈশিষ্ট্য থাকতে পারে।
  • ব্যবহারকারীর সম্পত্তির নাম অবশ্যই 24 অক্ষর বা তার কম হতে হবে।
  • ব্যবহারকারীর সম্পত্তির মান অবশ্যই 36 অক্ষর বা তার কম হতে হবে।
  • ইভেন্টের নাম অবশ্যই 40 অক্ষর বা তার কম হতে হবে, শুধুমাত্র আলফা-সংখ্যাসূচক অক্ষর এবং আন্ডারস্কোর থাকতে পারে এবং একটি বর্ণানুক্রমিক অক্ষর দিয়ে শুরু করতে হবে।
  • আইটেম প্যারামিটার সহ প্যারামিটারের নামগুলি অবশ্যই 40 অক্ষর বা তার কম হতে হবে, শুধুমাত্র আলফা-সংখ্যাসূচক অক্ষর এবং আন্ডারস্কোর থাকতে পারে এবং একটি বর্ণানুক্রমিক অক্ষর দিয়ে শুরু করতে হবে।
  • আইটেম প্যারামিটার মান সহ প্যারামিটার মান একটি আদর্শ Google Analytics প্রপার্টির জন্য 100 অক্ষর বা তার কম এবং একটি Google Analytics 360 প্রপার্টির জন্য 500 বা তার কম অক্ষর হতে হবে।
  • আইটেম প্যারামিটারে সর্বাধিক 10টি কাস্টম প্যারামিটার থাকতে পারে।
  • পোস্ট বডি অবশ্যই 130kB এর থেকে ছোট হতে হবে।
  • Google Analytics-এ পাঠানো অ্যাপ মেজারমেন্ট প্রোটোকল ইভেন্ট অ্যাপ ব্যবহারকারীদের জন্য Google বিজ্ঞাপনে সার্চ অডিয়েন্স তৈরি করে না।

প্রতিটি ব্যবহারের ক্ষেত্রে অতিরিক্ত প্রয়োজনীয়তার জন্য, সাধারণ ব্যবহারের ক্ষেত্রে দেখুন।