Class StreamManager

تعالج هذه السمة عمليات بث "إدراج الإعلان الديناميكي". يدير هذا الصف التفاعلات مع خوادم "الإعلانات الديناميكية أثناء البث"، ويتعامل مع طلبات تتبُّع النتائج، ويصدر أحداث البث والإعلانات.
الشركات المصنِّعة
constructor
الطُرق
addEventListener
تضيف هذه السمة أداة معالجة لنوع الحدث المحدّد.
contentTimeForStreamTime
تعرض هذه السمة وقت المحتوى بدون إعلانات لوقت بث معيّن.
focus
يتم التركيز على زر التخطّي، إذا كان متوفّرًا.
getAdSkippableState
تعرِض هذه السمة القيمة true إذا كان بإمكان المستخدم تخطّي الإعلان الحالي.
loadStreamMetadata
يطلب من حزمة تطوير البرامج (SDK) الخاصة بـ DAI تحميل بيانات وصفية للإعلان، ويُصدر الحدث LOADED stream.
onTimedMetadata
يتم تمريرها في قاموس البيانات الوصفية المعالَجة.
previousCuePointForStreamTime
تعرض هذه الطريقة نقطة الإشارة السابقة لوقت البث المحدّد.
processMetadata
تعالج هذه السمة البيانات الوصفية المحدّدة بوقت للبث.
removeEventListener
يزيل هذا الإجراء أداة معالجة لنوع حدث StreamEvent المحدّد.
replaceAdTagParameters
يستبدل جميع مَعلمات علامات الإعلانات المستخدَمة في طلبات الإعلانات القادمة لبث مباشر.
requestStream
يطلب بثًا من ميزة "إدراج الإعلان الديناميكي" في IMA ليتم تحميله باستخدام مَعلمات البث المقدَّمة.
reset
يعيد ضبط مدير البث ويزيل أي استطلاع مستمر.
streamTimeForContentTime
تعرِض هذه السمة إجمالي وقت البث مع الإعلانات لوقت محتوى معيّن.

الشركات المصنِّعة


constructor

new StreamManager(videoElement: HTMLVideoElement, adUiElement?: HTMLElement, uiSettings?: UiSettings): StreamManager
المعلمات
videoElement: HTMLVideoElement عنصر فيديو HTML الذي يتم فيه التشغيل
Optional adUiElement: HTMLElement العنصر الذي يتم فيه عرض واجهة مستخدم الإعلان.
Optional uiSettings: UiSettings إعدادات واجهة المستخدم التي سيتم استخدامها لهذا البث.
المرتجعات
StreamManager

الطُرق


addEventListener

addEventListener(type: Type, listener: ((event: StreamEvent) => void)): void
تضيف هذه السمة أداة معالجة لنوع الحدث المحدّد.
المعلمات
type: Type نوع حدث البث.
listener: ((event: StreamEvent) => void) دالّة ردّ اتصال لمعالج أحداث الإعلان.

contentTimeForStreamTime

contentTimeForStreamTime(streamTime: number): number
تعرض هذه السمة وقت المحتوى بدون إعلانات لوقت بث معيّن. تعرض هذه السمة الوقت المحدّد للبث المباشر.
المعلمات
streamTime: number وقت البث بالثواني، مع الجمع بين المحتوى والإعلانات
المرتجعات
number وقت المحتوى لوقت البث المحدّد، بدون الإعلانات

التركيز

focus(): void
يتم التركيز على زر التخطّي، إذا كان متوفّرًا. في حال عدم توفّرها، تتم إعادة التركيز على العنصر التفاعلي.

getAdSkippableState

getAdSkippableState(): boolean
تعرِض هذه السمة القيمة true إذا كان بإمكان المستخدم تخطّي الإعلان الحالي. عندما تتغيّر هذه القيمة، يُصدر الصف StreamManager حدثًا خاصًا بدفق SKIPPABLE_STATE_CHANGED.
المرتجعات
boolean true إذا كان بإمكان المستخدم تخطّي الإعلان الحالي، false بخلاف ذلك.

loadStreamMetadata

loadStreamMetadata(): void
يطلب من حزمة تطوير البرامج (SDK) الخاصة بـ DAI تحميل بيانات وصفية للإعلان وإصدار حدث بث LOADED. استدعِ هذه الطريقة يدويًا عند استرداد بيان البث من أداة دمج الفيديو التابعة لجهة خارجية. هذه الطريقة مخصّصة فقط لبث محتوى الفيديو عند الطلب (VOD) الذي يتم عرضه في البودكاست باستخدام أداة ربط فيديوهات تابعة لجهة خارجية.

onTimedMetadata

onTimedMetadata(metadata: {
  [key: string]: string;
}): void
يتم تمريرها في قاموس البيانات الوصفية المعالَجة. يتوقّع القاموس المفتاح "TXXX" نفسه مع سلسلة البيانات الوصفية المحدّدة من قِبل المستخدم كقيمة. إذا كان مشغّل الفيديو يوفّر بيانات وصفية أولية، استخدِم طريقة StreamManager.processMetadata بدلاً من ذلك.
المعلمات
metadata: {
  [key: string]: string;
}
قاموس البيانات الوصفية

previousCuePointForStreamTime

previousCuePointForStreamTime(streamTime: number): CuePoint
تعرض هذه الطريقة نقطة الإشارة السابقة لوقت البث المحدّد. إذا لم تكن هناك نقطة إشارة سابقة، يتم عرض null. استخدِم هذه الطريقة لتنفيذ ميزات مثل snapback من خلال استدعاء الطريقة عندما يحاول المستخدم العودة إلى فاصل إعلاني.
المعلمات
streamTime: number تمثّل هذه السمة وقت البث الذي يريد المستخدم الانتقال إليه.
المرتجعات
CuePoint نقطة الإشارة السابقة لوقت البث المحدّد

processMetadata

processMetadata(type: string, data: string | Uint8Array, timestamp: number): void
تعالج هذه السمة البيانات الوصفية المحدّدة بوقت للبث. استخدِم هذه الطريقة إذا كان مشغّل الفيديو يوفّر بيانات وصفية غير محلّلة مع الطوابع الزمنية. بخلاف ذلك، اتّصِل بالدالة StreamManager.onTimedMetadata.
المعلمات
type: string نوع البيانات الوصفية يجب أن تكون السلسلة 'ID3' بتنسيق HLS أو معرّف URI لمخطط رسالة الحدث بتنسيق DASH.
data: string | Uint8Array بيانات العلامة الأولية بالنسبة إلى ID3، يجب أن تكون بيانات العلامة الخام بأكملها. بالنسبة إلى رسائل أحداث DASH، هذه هي سلسلة بيانات الرسالة.
timestamp: number الوقت بالثواني الذي يجب فيه معالجة البيانات بالنسبة إلى DASH، تكون هذه المَعلمة هي وقت بدء رسالة الحدث.

removeEventListener

removeEventListener(type: Type, listener: ((event: StreamEvent) => void)): void
يزيل هذا الإجراء أداة معالجة لنوع حدث StreamEvent المحدّد. لإزالة مستمع بنجاح، يجب أن تكون مَعلمة المستمع التي تمرّرها إلى هذه الطريقة مساوية بالمرجع لتلك التي تم تمريرها سابقًا إلى طريقة addEventListener.
المعلمات
type: Type نوع الحدث الذي ستتم إزالة أداة المعالجة منه.
listener: ((event: StreamEvent) => void) الدالة التي ستتم إزالتها من قائمة المستمعين

replaceAdTagParameters

replaceAdTagParameters(adTagParameters: {
  [key: string]: string;
}): void
يستبدل جميع مَعلمات علامات الإعلانات المستخدَمة في طلبات الإعلانات القادمة لبث مباشر.
المعلمات
adTagParameters: {
  [key: string]: string;
}
مَعلمات علامة الإعلان البديلة، ويجب أن تتضمّن قيمًا من نوع سلسلة.

requestStream

requestStream(streamRequest: StreamRequest): void
يطلب بثًا من ميزة "إدراج الإعلان الديناميكي" في IMA ليتم تحميله باستخدام مَعلمات البث المقدَّمة.
المعلمات
streamRequest: StreamRequest يحتوي على مَعلمات لتحميل البيانات الوصفية للبث.

reset

reset(): void
يعيد ضبط مدير البث ويزيل أي استطلاع مستمر.

streamTimeForContentTime

streamTimeForContentTime(contentTime: number): number
تعرِض هذه السمة إجمالي وقت البث مع الإعلانات لوقت محتوى معيّن. تعرض هذه السمة وقت المحتوى المحدّد للبث المباشر.
المعلمات
contentTime: number وقت عرض المحتوى بدون أي إعلانات بالثواني
المرتجعات
number إجمالي مدة البث التي تتوافق مع وقت المحتوى المحدّد بعد أن تدرج ميزة "إدراج الإعلانات الديناميكي" الإعلانات.