بدء استخدام ميزة "الذكاء الاصطناعي في الوقت الفعلي" للبث المباشر

توفّر ميزة "إدراج الإعلانات الموجّه من الخادم" (SGAI) بيانًا جاهزًا لمجموعة إعلانات متسلسلة يمكن دمجها على أجهزة العملاء. إذا فعّلت ميزة "عرض الإعلانات أثناء البث" في شبكة Google Ad Manager، يمكنك استخدام SGAI. إذا لم تكن ميزة Pod Serving DAI مفعّلة، يُرجى التواصل مع مدير حسابك.

باستخدام SGAI، يمكنك استخدام نقاط نهاية واجهة برمجة التطبيقات الخاصة بعرض مجموعات الإعلانات المتسلسلة لإنشاء بث واسترداد بيانات وصفية للإعلانات وبيانات مجموعات الإعلانات المتسلسلة.

إذا كان لديك خادم لتعديل ملفات البيان، يمكنك إنشاء عناوين URL لملفات بيان مجموعة الإعلانات المتسلسلة وإدراج علامات إعلانات تتضمّن معلومات ملف بيان مجموعة الإعلانات المتسلسلة في بث المحتوى، وذلك وفقًا للمواصفات المفضّلة لديك.

بدلاً من ذلك، يمكنك جدولة فاصل إعلاني باستخدام آلية مختلفة غير علامات الإعلانات في بيان البث. في هذه الحالات، يمكن لتطبيقك الاستماع إلى أحداث أخرى، مثل تفاعل المستخدم مع البث أو التطبيق نفسه أو إشعار فوري. بعد هذه الأحداث، يمكن للتطبيق إنشاء عناوين URL لبيانات وصف مجموعة الإعلانات المتسلسلة وإخبار مشغّل الفيديو ببدء تحميل بيانات وصف مجموعة الإعلانات المتسلسلة.

المتطلبات الأساسية

قبل المتابعة، تأكَّد من توفّر ما يلي:

اتّباع الاقتراحات

قبل إنشاء عنوان URL لبيان وصف حزمة الإعلانات، ننصحك باستدعاء Early Ad Break Notification API لتحديد المدة المتوقّعة ومعلومات الاستهداف وغيرها من مَعلمات كل فاصل إعلاني.

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

إرسال طلب تسجيل بث

عندما يبدأ المستخدم بث محتوى في تطبيق مشغّل الفيديو، يمكنك إرسال طلب تسجيل بث مع مَعلمات الاستهداف لإنشاء جلسة بث على "مدير إعلانات Google". لمعرفة تفاصيل حول تقديم طلب تسجيل بث، يُرجى الاطّلاع على الطريقة:stream. بعد ذلك، تتلقّى بيانات الردّ من الطلب.

تُنشئ الأمثلة التالية طلب تسجيل بث:

بروتوكول HTTP بنص عادي

  • الطلب:
authority: dai.google.com
method: POST
path: /ssai/pods/api/v1/network/51636543/custom_asset/hls-podserving-manifest/stream
scheme: https
content-type: application/x-www-form-urlencoded

cust_params=customID%253D1543216789%2526anotherKey%253Dvalue1%252Cvalue2
  • الردّ:
{
    "manifest_format": "hls",
    "media_verification_url": "https://dai.google.com/view/p/service/linear/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/loc/TUL/network/51636543/event/TFyZF0IoSpqvCLtLv8JdCw/media/",
    "metadata_url": "https://dai.google.com/linear/pods/hls/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/metadata",
    "polling_frequency": 10,
    "session_update_url": "https://dai.google.com/linear/v1/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/session",
    "stream_id": "24fd4e7c-95a0-42be-8874-00625139b9db:TUL"
}

محارة

  • سطر الأوامر:
curl \
-H "Host: dai.google.com" \
-H "content-type: application/x-www-form-urlencoded" \
  --data-binary "cust_params=channelID%253D1543216789%2526anotherKey%253Dvalue1%252Cvalue2" \
  --compressed "https://dai.google.com/ssai/pods/api/v1/network/51636543/custom_asset/hls-podserving-manifest/stream"
  • إخراج:
{
    "manifest_format": "hls",
    "media_verification_url": "https://dai.google.com/view/p/service/linear/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/loc/TUL/network/51636543/event/TFyZF0IoSpqvCLtLv8JdCw/media/",
    "metadata_url": "https://dai.google.com/linear/pods/hls/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/metadata",
    "pod_manifest_url": "https://dai.google.com/linear/pods/v1/hls/event/TFyZF0IoSpqvCLtLv8JdCw/pod/$pod-id$.m3u8?stream_id=24fd4e7c-95a0-42be-8874-00625139b9db%3ATUL",
    "polling_frequency": 10,
    "session_update_url": "https://dai.google.com/linear/v1/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/session",
    "stream_id": "24fd4e7c-95a0-42be-8874-00625139b9db:TUL"
}

JavaScript

  • استخدام Fetch API:
const response = await fetch("https://dai.google.com/ssai/pods/api/v1/network/51636543/custom_asset/hls-podserving-manifest/stream", {
  "headers": {
    "content-type": "application/x-www-form-urlencoded",
  },
  "body": "cust_params=channelID%3D1543216789%26anotherKey%3Dvalue1%2Cvalue2",
  "method": "POST",
});

  const stream = await response.json();
  console.log(stream);
  • سجلّ وحدة التحكّم:
{
    "stream_id": "24fd4e7c-95a0-42be-8874-00625139b9db:TUL",
    "media_verification_url": "https://dai.google.com/view/p/service/linear/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/loc/TUL/network/51636543/event/TFyZF0IoSpqvCLtLv8JdCw/media/",
    "metadata_url": "https://dai.google.com/linear/pods/hls/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/metadata",
    "session_update_url": "https://dai.google.com/linear/v1/pa/event/TFyZF0IoSpqvCLtLv8JdCw/stream/24fd4e7c-95a0-42be-8874-00625139b9db:TUL/session",
    "polling_frequency": 10,
    "pod_manifest_url": "https://dai.google.com/linear/pods/v1/hls/event/TFyZF0IoSpqvCLtLv8JdCw/pod/$pod-id$.m3u8?stream_id=24fd4e7c-95a0-42be-8874-00625139b9db%3ATUL",
    "manifest_format": "hls"
}

استطلاع حول البيانات الوصفية للفاصل الإعلاني

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

إنشاء عنوان URL لملف بيان مجموعة الإعلانات المتسلسلة

أنشئ عنوان URL لمورد الحزمة في Pod Serving API. بعد ذلك، مرِّر عنوان URL إلى مشغّل فيديو لبدء تحميل مجموعة إعلانات متسلسلة.

يوضّح المثال التالي بنية عنوان URL لبيان مجموعة إعلانات متسلسلة:

https://dai.google.com/linear/pods/v1/hls/network/51636543/custom_asset/pod_serving_hls_manifest_mp4/ad_break_id/ab101.m3u8?stream_id=24fd4e7c-95a0-42be-8874-00625139b9db:TUL&pd=120000

يمكنك احتساب مَعلمات عنوان URL لبيان مجموعة الإعلانات المتسلسلة استنادًا إلى معلومات الفاصل الإعلاني التي تم استردادها من مشغّل الفيديو أو إشعار الخادم. للاطّلاع على متطلبات هذه المَعلمات، راجِع الطريقة: بيان وحدة pod.

تشغيل ملف بيان مجموعة إعلانات متسلسلة

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

إذا كنت تنشئ عناوين URL لبيانات وصف مجموعة الإعلانات المتسلسلة وتُدرجها في بيانات الوصف على جهة الخادم، راقِب أحداث فواصل الإعلانات القادمة في مشغّل الفيديو، وتأكَّد من الاشتراك في أحداث id3 أثناء تشغيل كل فاصل إعلاني. إذا كنت بصدد جدولة أحداث فواصل الإعلانات من جهة العميل، عليك الاشتراك في أحداث id3 عند الإنشاء.

تسجيل مرات الظهور وأحداث الإعلانات

عندما يشغّل مشغّل الفيديو مجموعة إعلانات متسلسلة ويصادف بيانات وصفية مؤقتة بتنسيق id3، يجب الاستماع إلى أحداث الإعلانات التي يشغّلها مشغّل الفيديو ومعالجتها من أجل إرسال إشعارات التحقّق من الوسائط.