ثبت منابع انتساب

یاد بگیرید که چگونه منابع را ثبت کنید تا کلیک‌ها و بازدیدها را به رویدادهای مناسب نسبت دهید.

منبع انتساب، یک رویداد مرتبط با تبلیغات (یک کلیک یا مشاهده) است که یک تکنسین تبلیغات می‌تواند انواع اطلاعات زیر را به آن پیوست کند:

  • داده‌های گزارش‌دهی زمینه‌ای، مانند شناسه‌ی خلاق تبلیغ، اطلاعات مربوط به کمپین یا موقعیت جغرافیایی.
  • یک مقصد تبدیل، مانند سایتی که انتظار دارید کاربر در آن تبدیل شود.

با دنبال کردن مراحل موجود در این سند، می‌توانید منابع - نمایش تبلیغات یا کلیک‌ها - را ثبت کنید که مرورگر سپس تبدیل‌ها را به آنها نسبت می‌دهد.

روش‌های ثبت نام

برای ثبت منابع ارجاع، از عناصر HTML یا فراخوانی‌های جاوا اسکریپت استفاده کنید:

  • تگ <a>
  • تگ <img>
  • تگ <script>
  • fetch واکشی
  • XMLHttpRequest
  • window.open تماس

این درخواست‌های شبکه‌ای ایجاد می‌کند که شما سپس با یک هدر پاسخ HTTP ثبت منبع به آنها پاسخ می‌دهید.

منابع کلیک یا بازدید را ثبت کنید

برای ثبت منبع انتساب برای کلیک‌ها یا بازدیدها، مراحل ذکر شده در اینجا را دنبال کنید. مراحل کامل در ادامه آمده است. خلاصه:

  1. ثبت منبع را آغاز کنید . از یک عنصر HTML یا یک فراخوانی جاوا اسکریپت برای ایجاد درخواست استفاده کنید. این مرحله برای کلیک‌ها و بازدیدها متفاوت است، همانطور که در بخش‌های بعدی متوجه خواهید شد.
  2. ثبت منبع را با پاسخ دادن به سربرگ ثبت منبع تکمیل کنید . پس از دریافت آن درخواست، با سربرگ Attribution-Reporting-Register-Source پاسخ دهید. در آن سربرگ، پیکربندی گزارش‌دهی نسبت‌دهی انتخاب شده را مشخص کنید. این مرحله برای هر دو کلیک و بازدید یکسان است.

    مثال برای گزارش‌های خلاصه:

    {
      "aggregation_keys": {
        "campaignCounts": "0x159",
        "geoValue": "0x5"
      },
      "aggregatable_report_window": "86400",
      "destination": "https://example.com"
    }
    

    مثال برای گزارش‌های سطح رویداد:

    {
      "source_event_id": "12340873456",
      "destination": "[eTLD+1]",
      "expiry": "[64-bit signed integer]",
      "priority": "[64-bit signed integer]",
      "event_report_window": "[64-bit signed integer]"
    }
    

ویژگی‌های الزامی و اختیاری

همانطور که از عناصر HTML استفاده می‌کنید یا فراخوانی‌های جاوا اسکریپت را برای ثبت منابع انجام می‌دهید، ممکن است نیاز به استفاده attributionsrc یا attributionReporting داشته باشید. برای جزئیات بیشتر در مورد زمان مورد نیاز به این موارد، به جدول زیر مراجعه کنید.

وقتی attributionsrc اختیاری است، استفاده از آن نشان می‌دهد که درخواست واجد شرایط گزارش‌دهی نسبت‌دهی است. اگر از attributionsrc استفاده کنید، مرورگر هدر Attribution-Reporting-Eligible را ارسال می‌کند. همچنین برای اندازه‌گیری از برنامه به وب مفید است: اگر attributionsrc وجود داشته باشد، مرورگر هدر Attribution-Reporting-Support را ارسال می‌کند.

روش ثبت نام منبع
تگ <a> (منبع ناوبری)
attributionsrc الزامی است.
تگ <img> (منبع رویداد)
attributionsrc الزامی است.
تگ <script> (منبع رویداد)
attributionsrc الزامی است.
fetch واکشی گزینه attributionReporting الزامی است.
XMLHttpRequest گزینه attributionReporting الزامی است.
window.open تماس (منبع ناوبری)
attributionsrc الزامی است.

مرحله ۱: شروع ثبت منبع

مرحله ۱ برای کلیک‌ها و بازدیدها متفاوت است.

برای ثبت منبع انتساب برای یک کلیک، می‌توانید از تگ <a> یا window.open() جاوا اسکریپت استفاده کنید.

استفاده از لنگر

به تگ‌های <a> موجود که می‌خواهید تعداد نمایش یا کلیک‌هایشان را اندازه‌گیری کنید، attributionsrc اضافه کنید:

<a href="https://shoes.example/..." attributionsrc>Click me</a>

برای اطلاعات بیشتر ، کد مثال را بررسی کنید.

با استفاده از یک اسکریپت

فراخوانی window.open() با attributionsrc :

window.open(
  "https://shoes.example/...",
  "_blank",
  "attributionsrc");

برای اینکه این متد در نظر گرفته شود، باید ظرف ۵ ثانیه پس از تعامل کاربر فراخوانی شود.

به جای اضافه کردن attributionsrc به تنهایی، برای یک تصویر یا اسکریپت می‌توانید یک مقدار URL واحد مشخص کنید:

<a href=... attributionsrc="https://a.example/register-source">Click me</a>

در مورد جاوا اسکریپت، اگر به attributionsrc مقداری می‌دهید، مطمئن شوید که آن URL را کدگذاری می‌کنید تا در صورت وجود کاراکترهای خاص مانند = که باعث تجزیه نادرست پارامتر می‌شوند، دچار مشکل نشوید.

به صورت زیر کدگذاری کنید:

const encodedUrl = encodeURIComponent(
  "https://adtech.example/attribution_source?ad_id=...");
window.open(
  "https://shoes.example/landing",
   "_blank",
   `attributionsrc=${encodedUrl}`);

attributionsrc همچنین می‌تواند لیستی از URLها را که با فاصله از هم جدا شده‌اند، همانطور که در اینجا با برچسب <a> نشان داده شده است، دریافت کند:

<a href=... attributionsrc="https://a.example/register-source
  https://b.example/register-source">Click me</a>

یا همانطور که اینجا با استفاده از window.open() ‎ است.

window.open("...", "_blank", `attributionsrc=${encodedUrl1}
  attributionsrc=${encodedUrl2}`)

در چنین مواردی، هر دو URL درخواست‌های navigation-source-eligible attributionsrc (درخواست‌هایی که شامل هدر Attribution-Reporting-Eligible هستند) را دریافت می‌کنند.

attributionsrc با یا بدون مقدار

همانطور که قبلاً دیدید، می‌توانید attributionsrc بدون URL مشخص کنید. همچنین می‌توانید یک URL واحد مشخص کنید. علاوه بر این، می‌توانید از لیستی از URLها که با فاصله از هم جدا شده‌اند استفاده کنید.

استفاده از URLها باعث می‌شود مرورگر یک درخواست جداگانه برای دریافت keepalive - یکی برای هر URL - که شامل هدر درخواست Attribution-Reporting-Eligible ، آغاز کند.

این مورد زمانی مفید است که بخواهید ثبت منبع را با پاسخ به درخواستی جدا از درخواست اصلی عنصر انجام دهید.

برای مثال، اگر نیاز دارید منابعی را برای کلیک روی یک عنصر لنگر ثبت کنید، ممکن است در واقع کنترلی بر مقصد نداشته باشید؛ در این حالت، به پیکربندی نیاز خواهید داشت که به موجب آن، هدر ثبت منبع را به عنوان پاسخی به درخواستی ارسال کنید که جدا از ناوبری است و می‌توانید آن را کاملاً کنترل کنید. با تعیین یک مقدار صریح برای attributionsrc ، به مرورگر دستور می‌دهید که آن درخواست اضافی را انجام دهد و مقصد آن را پیکربندی کند.

برای ثبت یک منبع ارجاع برای یک نما، می‌توانید از یک تگ تصویر یا اسکریپت استفاده کنید که به آن ویژگی attributionsrc را اضافه خواهید کرد.

به عنوان یک روش جایگزین، می‌توانید fetch() جاوا اسکریپت یا XMLHttpRequest() استفاده کنید.

با یک تصویر

<img attributionsrc
src="https://adtech.example/attribution_source?ad_id=...">

با یک اسکریپت

<script attributionsrc
  src="https://adtech.example/attribution_source?ad_id=..."></script>

به صورت اختیاری، می‌توانید یک مقدار URL برای attributionsrc به همان روشی که برای کلیک‌ها تعیین می‌شود، تعیین کنید؛ یعنی برای یک تصویر یا اسکریپت، می‌توانید URL یا URLهای attributionsrc را به صورت زیر تنظیم کنید:

با یک آدرس اینترنتی واحد:

<img attributionsrc="https://adtech.example/attribution_source?ad_id=123">

با لیستی از آدرس‌های اینترنتی:

<img attributionsrc="https://a.example/register-source
  https://b.example/register-source">

استفاده از fetch() یا XMLHttpRequest()

این کد به طور مؤثر کاری را که یک درخواست HTML با attributionsrc انجام می‌دهد، شبیه‌سازی می‌کند:

const attributionReporting = {
  eventSourceEligible: true,
  triggerEligible: false,
};

// Optionally set keepalive to make sure the request outlives the page.
window.fetch("https://adtech.example/attribution_source?my_ad_id=123",
  { keepalive: true, attributionReporting });
const attributionReporting = {
  eventSourceEligible: true,
  triggerEligible: false,
};

const req = new XMLHttpRequest();
req.open("GET", url);
req.setAttributionReporting(attributionReporting);
req.send();

مرحله ۲: پاسخ با هدر (کلیک‌ها و بازدیدها)

مرحله بعدی برای هر دو مورد کلیک و بازدید، پاسخ دادن با هدر Attribution-Reporting-Register-Source است.

برای اطلاعات بیشتر ، کد مثال را بررسی کنید.

پس از دریافت درخواست مرورگر در سرور، پاسخ دهید و هدر Attribution-Reporting-Register-Source را در پاسخ خود قرار دهید.

res.set(
  "Attribution-Reporting-Register-Source",
  JSON.stringify({
    // Use source_event_id to map it to any granular information
    // you need at ad-serving time
    source_event_id: "412444888111012",
    destination: "https://advertiser.example",
    // Optional fields
    expiry: "604800",
    priority: "100",
    debug_key: "122939999"
  })
);

پس از رشته‌بندی، هدر شما به این شکل خواهد بود:

{"source_event_id":"412444888111012","destination":"https://advertiser.example","expiry":"604800","priority":"100","debug_key":"122939999"}

مراحل بعدی

یاد بگیرید که چگونه محرک‌های انتساب را ثبت کنید .