تحديد عدد مرات الظهور للجمهور المحمي

إنّ "تحديد عدد مرّات الظهور" هو ممارسة إعلانية تحدّ من عدد الإعلانات التي يتم عرضها للمستخدِم خلال فترة زمنية معيّنة من فئة معيّنة. من خلال تحديد عدد مرات الظهور، يتم تحسين تجربة المستخدم النهائي من خلال إبقاء مرات ظهور الإعلان جديدة ومثيرة للاهتمام، كما تساعد المعلنين على إدارة الإنفاق الإعلاني.

يوضّح هذا الاقتراح كيفية استخدام ميزة "الجمهور المحمي" على Android لتنفيذ وظيفة تحديد عدد مرات الظهور بطريقة دقيقة مع الحفاظ على الخصوصية.

تطبّق ميزة "الجمهور المحمي" عملية تحديد عدد مرات الظهور من خلال الجمع بين ميزتَين: التخزين على الجهاز للعدّادات المتعلّقة بالإعلانات، والقدرة على فلترة الإعلانات وفقًا لمجموعة محدّدة مسبقًا من استراتيجيات الفلترة. يتيح تحديد عدد مرات الظهور للمعلنين إمكانية الإشارة إلى الحد الأدنى للعداد على مجموع قيم المدرج التكراري لفترة زمنية معينة.

تكون العدادات فريدة لكل مجموعة من الملفات الشخصية للجهاز وتكنولوجيا الإعلان والمفتاح المقابل. يجب أن يحتوي كل إعلان على مجموعة من مفاتيح العدّاد لاستخدامها في حال تسجيل مشاهدة أو مرة ظهور للإعلان. لكل مفتاح، يخزّن "الجمهور المحمي" مجموعة من العدّادات، ويسجِّل كل عدّاد جميع الأحداث الخاصة بالإعلانات التي تحدث خلال فترة زمنية محدَّدة. تتم زيادة العدّادات المتاحة على الجهاز فقط عند تسجيل مرة ظهور أو مشاهدة، ويتم الاحتفاظ ببيانات العدّاد على الجهاز. سيتم تحديد وقت الاستمرار الدقيق لاحقًا.

يمكن لمنطق فلترة الإعلانات في سير عمل اختيار الإعلانات في Protected Audience الوصول إلى العدّادات وإعلانات تجديد النشاط التسويقي والإعلانات السياقية، ما يمنح الجمهور المحمي إمكانية تحديد عدد مرّات الظهور مع إمكانية التعامل مع كل أنواع طلبات الإعلانات.

ملاحظة: لا تتوفّر فلترة الإعلانات إلا في "مبادرة حماية الخصوصية" على Android. إنّ تنفيذ ميزة "الجمهور المحمي" في Chrome لا يستخدم في الوقت الحالي آلية لفلترة إعلانات الجمهور غير المحمية التي تستهدف المحتوى. يشمل هذا الاقتراح دعم الشراء فقط. وإذا كان هناك طلب، سنضيف دعمًا من جانب البيع في وقت لاحق.

تتوافق ميزة تحديد عدد مرات الظهور المحميّة مع مجموعة واسعة من المتطلبات، بما في ذلك:

  • التصفية في الوقت الفعلي، مع تقليل التأخير من جانب الخادم عند تحديث العدّادات المتوفرة على الجهاز فقط.
  • التسلسل الهرمي المرن للمفاتيح، بما في ذلك الإعلانات الفردية، أو الحملات، أو أي تجميع آخر.
  • تتطابق مع طرق تحديد عدد مرّات الظهور الأخرى، بدون الاعتماد على المعرّف الإعلاني
  • تعمل هذه الميزة على جميع التطبيقات من خلال ملف شخصي لمستخدم معيّن على جهاز معيَّن.
  • عدّادات دقيقة وكاملة
  • دعم التعريفات المخصّصة لأحداث الإعلانات، مثل المشاهدات أو مرات الظهور
  • وظيفة واحدة لكلٍّ من إعلانات تجديد النشاط التسويقي والإعلانات السياقية.

لإعداد تحديد عدد مرات الظهور، يُرجى اتّباع الخطوات التالية:

الخطوة 1: إضافة معلومات تحديد عدد مرّات الظهور إلى الإعلانات

تشير الإعلانات السياقية وإعلانات تجديد النشاط التسويقي إلى عدّادات المدرّج التكراري ذات الصلة بالتحديث في حالة المشاهدة أو الظهور باستخدام الحقل ad_counter_keys الذي يحتوي على قائمة بأعداد صحيحة عشوائية. لم يتم تضمين الحقل في حقل metadata الذي لم يتم تحليله من خلال "الجمهور المحمي".

يعرض المثال التالي تنسيق البيانات للحقل adsData في AdSelectionConfig. بالنسبة إلى تجديد النشاط التسويقي، يتوافق تنسيق قائمة الإعلانات لشريحة جمهور مخصّصة معيّنة مع محتوى الحقل ads المعروض في المثال التالي:

'adsData': [
  {
    "buyer": "ads.example.com",
    "ads": [
      {
        'render_url': 'exampleUrl',
        'metadata': {...},   /* metadata are opaque to Protected Audience are
                                required to be in valid JSON format */
        'ad_counter_keys': [1234, 5678]
      }]
  }]
}

الخطوة 2: تسجيل ملف شخصي أو مرة ظهور

يمكن لتكنولوجيا الإعلان استدعاء طريقة updateAdCounterHistogram لتسجيل مرّات وقوع الأحداث التي تُستخدم لتحديد عدد مرات الظهور. ويمكن استدعاء طريقة معيّنة بشكل متكرّر في الحدث نفسه للمفاتيح المحدّدة في eventType للإعلان الفائز.

void updateAdCounterHistogram(@EventType eventType, long adSelectionId)

الإدخالات:

  • eventType: تحدِّد ما إذا كان الحدث يتم احتسابه كمشاهدة أو مرة ظهور أو نقرة أو مدى الفوز في عملية اختيار الإعلان.
  • adSelectionId: قيم المعرّفات في كائن AdSelectionOutcome التي يتم عرضها من خلال استدعاءات selectAds.

يعدِّل طلب updateAdCounterHistogram المدرج التكراري لمجموعة المفاتيح المحددة كجزء من إعلانات تجديد النشاط التسويقي التي يتم جلبها من خلال CustomAudience أو الإعلانات السياقية المضمّنة في معلمة AdSelectionConfig من أجل selectAds.

إذا افترضت أن الإعلان في الخطوة 1 هو الفائز في AdSelection بقيمة id 9999، فإن استدعاء updateAdCounterHistogram(FrequencyCapFilters.AD_EVENT_TYPE_VIEW, adSelectionId: 999) يزيد عدد العدّادات للمفاتيح الثلاثة الأساسية التالية:

  • {'ads.example.com', 1234, VIEW}
  • {'ads.example.com', 5678, VIEW}

يتم الحصول على اسم تقنية الإعلان من حقل المشترين، سواء من الإعلانات السياقية أو من الجماهير المخصّصة، بناءً على المصدر الذي تأتي منه الإعلانات الفائزة.

تعمل ميزة "الجمهور المحمي لنظام التشغيل Android" تلقائيًا على زيادة جميع العدّادات المذكورة أعلاه لنوع الحدث FrequencyCapFilters.AD_EVENT_TYPE_WIN للإعلانات التي يعرضها طلب البيانات من واجهة برمجة التطبيقات selectAds. يعادل ذلك عمليًا إضافة الوسيطة prev_wins إلى browser_signals في generateBid في تنفيذ Protected Audience في Chrome.

الخطوة 3: تنفيذ فلترة تحديد عدد مرات الظهور باستخدام الفلاتر

لتحقيق الأداء الأمثل، يتم تنفيذ وظيفة فلترة تحديد عدد مرات الظهور ضمن AdServices. تدرك ميزة "الجمهور المحمي" ما إذا كان يجب فلترة الرسالة من خلال قراءة حقل الفلاتر في عنصر AdsData. تم تحديد قائمة بالفلاتر في frequency_cap. يتم استخدام قيمتَي المفتاح event_type وinterval_in_seconds لاسترداد مدرّج تكراري للأحداث التي يتم استخدامها للفلترة والجمهور المحمي.

يمكن تحديد معلومات الفلترة لإعلانات تجديد النشاط التسويقي التي يوفّرها جمهور مخصّص والإعلانات السياقية كجزء من عنصر AdSelectionConfig.

بالنسبة إلى الإعلانات السياقية التي تحتوي على فلاتر تحديد عدد مرات الظهور، يتم تمرير الإعلانات باستخدام حقل الإعلانات في العنصر AdSelectionConfig. تتم تصفية الإعلانات، ويعرض الإعلان صاحب أعلى عرض سعر نتيجة طلب selectAds.

بالنسبة إلى إعلانات تجديد النشاط التسويقي التي تستخدم فلاتر تحديد عدد مرات الظهور، تتم فلترة الإعلانات قبل استدعاء وظيفة JavaScript generateBid() التي يقدّمها المشتري.

يعرض المثال التالي رسالة تتضمن فلترة تحديد عدد مرات الظهور:

{
  'render_url': 'url',
  'metadata': {...},   /* metadata are opaque to Protected Audience and assumed
                        to be in valid JSON format */

  'ad_counter_keys': [1234, 5678],

  "filters": {
    "frequency_cap": {
      "view": [
        {
          "ad_counter_key": 1234
          "max_count": 10,
          "interval_in_seconds": 86400
        },
        {
          "ad_counter_key": 5678
          "max_count": 10,
          "interval_in_seconds": 86400
        },
      ],
      "win": [
        {
          "ad_counter_key": 1234
          "max_count": 5,
          "interval_in_seconds": 604800
        },
        {
          "ad_counter_key": 5678
          "max_count": 5,
          "interval_in_seconds": 345600
        },
      ]
    },

  // This field is only required in contextual ads and is used in
  // reportImpression calls to fetch the reportWin function.
  'reportingJS': "https://ads.example.com?reportWin.js"
}

الخطوة 4: الإبلاغ عن الإعلانات الفائزة

بعد اكتمال عملية اختيار الإعلانات، يتم عرض عنصر AdSelectionOutcome يحتوي على renderUri وadSelectionId، وهو معرّف رقمي لاستدعاء selectAds. ويمكن استخدام رقم التعريف هذا لاستدعاء واجهة برمجة التطبيقات reportImpression التي تتيح حاليًا إعداد التقارير على مستوى الحدث. في الإصدار التجريبي 1، تتيح هذه الطريقة إعداد تقارير إعلانات تجديد النشاط التسويقي، وسيتم توسيع نطاقها لتشمل دعم إعداد تقارير الإعلانات السياقية في إصدار لاحق. بالنسبة إلى الإعلانات السياقية، يُطلب من المشتري الإشارة إلى المكان الذي يمكن فيه استرداد وظيفة reportWin أثناء إجراء مكالمة reportImpression، وذلك باستخدام حقل إضافي يُسمى reportingJS في بنية الإعلان، كما هو موضّح في المثال أعلاه.

أفضل الممارسات لاختيار المرشحين للإعلانات

تعمل ميزة "الجمهور المحمي" على نقل تنفيذ تحديد عدد مرات الظهور من الخادم إلى الجهاز. على الرغم من إدراج عروض الأسعار الفائزة باستخدام "مبادرة حماية الخصوصية"، لن يعرف المطوّرون سبب عدم عرض أيّ إعلان. قد لا يتم عرض الإعلانات بسبب فقدان عرض السعر أو بسبب تحديد عدد مرات الظهور. في ظل عدم توفُّر رؤية كاملة لأسباب عدم فوز إعلانات معيّنة، تتطلب أنظمة عروض الأسعار جهدًا إضافيًا لضمان عرض الإعلانات المثلى. ستساعد أفضل الممارسات هذه في ضمان العرض الأمثل للإعلانات باستخدام ميزة "الجمهور المحمي".

إرسال عدد كافٍ من إعلانات تجديد النشاط التسويقي

لا يمكن تحسين إعلانات تجديد النشاط التسويقي لكل مستخدم. إذا شاهد المستخدِم عددًا كبيرًا من الإعلانات من جمهور مخصّص وكانت حدود الإعلانات منخفضة، قد تتمّ فلترة جميع الإعلانات. يتم تحديث إعلانات تجديد النشاط التسويقي بشكل دوري، لذا يجب أن يجتاز مستودع إعلانات كافٍ تحديد عدد مرات الظهور لضمان مواصلة عرض إعلانات تجديد النشاط التسويقي. ويجب الموازنة بين ذلك مع القيود المفروضة على حجم الإعلانات التي يمكن تحديدها أثناء مكالمة joinCustomAudience وخلال التحديث اليومي للجمهور المخصّص. يجب أن يراعي المشترين أنّه قد تكون هناك زيادة في زمن الاستجابة خلال مرحلة تقديم عروض الأسعار. للحدّ من تأثير هذه المشاكل، يتم تنفيذ فلترة لتحديد عدد مرات الظهور قبل الاتصال بـ generateBid.

الاحتفاظ بالعدّادات السياقية على الخادم

من خلال التقدير من جهة الخادم، يمكن أن يكون لدى مطوّر البرامج تقديرات تقريبية لأوقات تفعيل ميزة تحديد عدد مرات الظهور. يمكن أن تشير هذه التقديرات إلى احتمال وصول أحد الإعلانات إلى الحد الأدنى لتحديد عدد مرات الظهور، وبالتالي يجب إرساله مع عدد أكبر من المرشحين للإعلان أو إزالته بالكامل.

إرسال عدة مرشحين للإعلان في الاستجابة السياقية

يجب إرسال عدّة ترشيحات للإعلانات مع ردّ سياقي قبل مزاد "الجمهور المحمي". هذا يضمن أنّه إذا تمت فلترة عدة إعلانات، سيستمر عرض إعلانات أخرى. ويمكن تحديد أولوية المرشحين للإعلانات بحيث يتم تقديم بعض الإعلانات كإعلانات احتياطية.

ولأن التنفيذ محدد زمنيًا، يجب اختيار المرشحين للإعلانات وفقًا لاحتمالية فوزهم بالمزاد وعدم استبعادهم.

القيود

في ما يلي القيود المعروفة لتحديد عدد مرّات الظهور للجمهور المحمي:

  1. تعمل ميزة "تحديد عدد مرات الظهور المحمي" على مستوى الملف الشخصي لمستخدم الجهاز، بدون أي عدّادات مشترَكة على الأجهزة الأخرى والملفات الشخصية الأخرى. ويجب دمج أي زيادات في الإعلانات التي يتم عرضها من الأجهزة الأخرى يدويًا، إذا لزم الأمر.
  2. يتم تخزين عدّادات الأجهزة والوصول إليها على الجهاز. يجب إدارة العدادات من جانب الخادم بشكل منفصل.
  3. أثناء معالجة تحديد عدد مرّات الظهور وفلترة الإعلانات ذات الصلة على جهاز، لا تتحكّم منصّات تكنولوجيا الإعلانات مباشرةً في هذه العمليات. لتجاوز الحدّ الأدنى لتحديد عدد مرّات الظهور على الجهاز، يمكن للمنصات الفنية الخاصة بالإعلانات إرسال العديد من الإعلانات المرشَّحة باستخدام فلاتر مختلفة.
  4. لا تتوفّر تعديلات عروض الأسعار المستندة إلى معدّل التكرار المُسجَّل. لا يمكن لدوال generateBid عرض عدّادات معدّل التكرار.