حزمة تطوير البرامج (SDK) لإدراج الإعلانات الديناميكي (DAI) على Roku
يوضّح هذا الدليل كيفية تنفيذ ميزة وضع الإشارات المرجعية باستخدام حزمة تطوير البرامج للإعلانات التفاعلية من Google في ميزة "إدراج الإعلان الديناميكي" عند استخدامها لبث محتوى الفيديو عند الطلب. يفترض هذا المثال أنّ هناك عملية تنفيذ ناجحة لخدمة "إدراج الإعلانات الديناميكي" من IMA، مثل تلك المعروضة في مقالة البدء.
ما هي إضافة المواقع الإلكترونية إلى الإشارات المرجعية؟
تتيح لك الإشارة المرجعية حفظ نقطة معيّنة في بث المحتوى ثم الرجوع إليها. لنفترض أنّ أحد المستخدمين شاهد خمس دقائق من المحتوى، ثم غادر بث الفيديو، ثم عاد إليه. تتيح ميزة وضع الإشارة المرجعية للمستخدم حفظ موضع الفيديو في البث المباشر، ما يتيح له متابعة المشاهدة من حيث توقّف، وبالتالي توفير تجربة سلسة للمشاهد.
الإشارات المرجعية في "الإعلانات الديناميكية أثناء البث"
عند وضع إشارة مرجعية على بث مباشر في "إعلانات الفيديو الديناميكية"، عليك تسجيل معرّف البث والوقت عندما يغادر المستخدم الفيديو. عندما يعود المستخدم، أعِد طلب البث وانتقِل إلى الوقت المحفوظ. بما أنّ كل مثيل من البث المطلوب يمكن أن يتضمّن فواصل إعلانية بمدد مختلفة، لن يكون حفظ وقت البث كافيًا. ما عليك فعله هو المتابعة من وقت المحتوى نفسه.
طُرق الإحالة الناجحة في الخدمة
توفّر حزمة تطوير البرامج (SDK) الخاصة بإعلانات البث المباشر من "إعلانات الوسائط التفاعلية" طريقتَين لطلب وقت المحتوى لوقت بث معيّن، ووقت البث لوقت محتوى معيّن. باستخدام طرق التحويل هذه، يمكنك تخزين وقت المحتوى الذي تمت إضافة إشارة مرجعية إليه، ثم البحث عن وقت البث المقابل في مثيل جديد من البث. في ما يلي الطريقة، بما في ذلك رابط إلى تطبيق نموذجي يعرض عملية تنفيذ ناجحة للإشارات المرجعية.
حفظ الإشارات المرجعية
حفظ إشارة مرجعية عندما يكون "سجلّ النشاط" متوقفًا مؤقتًا
Saves the current time as a bookmark in the current video.
Function saveBookmarkTime(player as Object, streamManager as Object) as Void
m.videos[player.video.index].bookmarkTime =
streamManager.getContentTime(player.currentTime * 1000)
End Function
جارٍ تحميل الإشارات المرجعية
حمِّل الإشارة المرجعية عند إعادة طلب بث. وهو جزء من عملية تنفيذ واجهة VideoStreamPlayer
.
player.loadUrl = Function(streamInfo as Object)
...
If m.video.bookmarkTime > 0
streamTime = m.streamManager.getStreamTime(m.video.bookmarkTime)
m.videoPlayer.seek(streamTime)
End If
End Function