تعرض هذه الصفحة التغييرات في YouTube Live Streaming API والتعديلات على المستندات. الاشتراك في سجلّ التغييرات هذا
9 تشرين الأول (أكتوبر) 2023
يمكنك الاطّلاع على أرقام تعريف الملصقات التي ترتبط بالملصقات العجيبة في
ملف CSV هذا، وذلك للرجوع إليه فقط.
تم تعديل تعريفات سمة
snippet.superStickerDetails.superStickerMetadata.stickerId
مرجع liveChatMessage
وسمة
snippet.superStickerMetadata.stickerId
مرجع superChatEvent
لتعكس هذه المعلومات.
15 أيلول (سبتمبر) 2023
تتيح واجهة برمجة التطبيقات الآن طريقة جديدة لإدراج الإعلانات في أحداث البث المباشر. بالإضافة إلى علامة "liveCuepoints
" التي تتيح لك إدراج فواصل إعلانية يدويًا في البث، تتيح منصة YouTube الآن ميزة لإدراج فواصل إعلانية أثناء التشغيل تلقائيًا في البث على فترات زمنية ثابتة.
إذا فعّل مالك البث الإعلانات المبرمَجة، يمكنه الاطّلاع على الجوانب التالية من سلوك الإعلانات:
- مدة الفاصل بين الفواصل الإعلانية أثناء التشغيل
- استراتيجية الجدولة لنقاط بدء عرض الإعلانات يمكن إدراج نقاط الربط بشكل متزامن لجميع المشاهدين أو يمكن أن يختلف توقيت نقاط الربط من مشاهد إلى آخر. تتيح الاستراتيجية الأخيرة لمنصة YouTube جدولة نقاط البدء بمعدّل متزايد يتيح للمشاهدين تلقّي نقاط البدء عندما يكونون مؤهّلين لذلك.
- وهي فترة لا يتم خلالها عرض "الإعلانات أثناء التشغيل". وبالنسبة إلى هذه الميزة، يحدّد مالك البث أنّ إدراج "الإعلانات أثناء التشغيل" مؤقتًا إلى وقت معيّن.
تعكس المستندات التغييرات التالية على واجهة برمجة التطبيقات لتفعيل هذه الميزة:
- يحتوي مورد
liveBroadcast
الآن على عنصرmonetizationDetails
. تشير حقول العنصر إلى ما إذا كان قد تم تفعيل ميزة إدراج الإعلانات التلقائية لبث المحتوى، كما تحدّد معلومات إضافية لجدولة نقاط البدء. - تتيح المَعلمة
part
في الطريقةliveBroadcast.list
استخدام القيمةmonetizationDetails
. - يمكن استخدام الطريقة
update
لإيقاف إدراج "الإعلانات أثناء التشغيل" مؤقتًا لفترة معيّنة في البث المباشر. تحدد المستندات الآن أيضًا العديد من الأخطاء التي يمكن أن تحدث عند تعديل تفاصيل تحقيق الربح لبث مباشر.
1 أغسطس 2023
يتضمّن هذا التحديث التغييرات التالية:
-
لم تعُد طريقة
liveBroadcasts.update
تتطلّب تحديد قيم لهذه الحقول:snippet.title
status.privacyStatus
سيؤدي حذف هذه الحقول من الطلب إلى عدم تغييرها.
1 تشرين الثاني (نوفمبر) 2022
-
تتيح الطريقة الجديدة
liveBroadcasts.cuepoint
التي نقدّمها لأي مالك قناة يبث محتوى مباشرًا على YouTube إدراج نقاط بداية في هذا البث، ما يمكن أن يؤدي إلى عرض الفواصل الإعلانية. تحلّ هذه الطريقة محلّliveCuepoints.insert
التي كانت تتيح لشركاء المحتوى في YouTube فقط إدراج نقاط إشارة في البث المباشر.تم تعديل العديد من الأدلة لتوضيح توفّر هذه الطريقة الجديدة.
-
ملاحظة: هذا إشعار بإيقاف ميزة نهائيًا.
تم إيقاف الطريقة
liveCuepoints.insert
نهائيًا. ستتم إزالة ميزة استخدامliveCuepoints.insert
في 1 أيار (مايو) 2023 أو بعد هذا التاريخ. على مستخدمي واجهة برمجة التطبيقات تحديث تطبيقاتهم لطلب البيانات من خلال الطريقةliveBroadcasts.cuepoint
بدلاً من ذلك. -
تمّت إزالة مستندات طريقة
liveBroadcasts.control
. تم نشر إشعار بإيقاف هذه الطريقة نهائيًا في أيلول (سبتمبر) 2020.
1 تشرين الأول (أكتوبر) 2022
يتضمّن هذا التحديث التغييرات التالية:
-
لم تعُد طريقة
liveBroadcasts.update
تتطلّب تحديد قيم لهذه الحقول:contentDetails.enableContentEncryption
contentDetails.enableDvr
contentDetails.enableEmbed
contentDetails.recordFromStart
contentDetails.startWithSlate
سيؤدي حذف هذه الحقول من الطلب إلى عدم تغييرها.
-
تمت إزالة المستندات المتعلّقة بحقول
liveBroadcast
القديمة:contentDetails.enableContentEncryption
contentDetails.startWithSlate
1 نيسان (أبريل) 2022
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح السمة
snippet.type
الآن قيمتَين جديدتَين:membershipGiftingEvent
giftMembershipReceivedEvent
-
تحتوي السمة
snippet.membershipGiftingDetails
الجديدة لموردliveChatMessage
ونسبها الفرعية على معلومات عن حدث "إهداء اشتراك داعم". وبالمثل، يحتوي الموقع الجديدsnippet.giftMembershipReceivedDetails
والعناصر التابعة له على معلومات عن حدث "تلقّي اشتراك داعم هبة".
15 أيلول (سبتمبر) 2021
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح السمة
snippet.type
الآن قيمتَين جديدتَين:newSponsorEvent
memberMilestoneChatEvent
-
تحتوي السمة
snippet.memberMilestoneChatDetails
الجديدة لموردliveChatMessage
ونسبها الفرعية على معلومات عن فعالية "محادثة مميّزة خاصة بالأعضاء". وبالمثل، يحتوي الموقع الجديدsnippet.newSponsorDetails
والعناصر التابعة له على معلومات عن حدث "الراعي الجديد".
1 كانون الأول (ديسمبر) 2020
تتيح طريقة liveBroadcasts.transition
في واجهة برمجة التطبيقات خطأ 403
(Forbidden
) جديدًا، يشير إلى أنّ المستخدِم
أرسل عددًا كبيرًا جدًا من الطلبات خلال إطار زمني معيّن. سبب الخطأ هو userRequestsExceedRateLimit
.
21 أيلول (سبتمبر) 2020
-
تم تعديل تعريف سمة
status.madeForKids
لمصدرliveBroadcast
لتوضيح أنّ السمة للقراءة فقط. ولا يشير ذلك إلى تغيير في وظيفة واجهة برمجة التطبيقات.لتصنيف بث مباشر على أنّه موجّه إلى الأطفال، اضبط القيمة الخاصة بالخاصية
status.selfDeclaredMadeForKids
علىtrue
عند استدعاء الأسلوبliveBroadcasts.insert
لإنشاء البث. -
ملاحظة: يتضمّن هذا التغيير إشعارًا بإيقاف ميزة نهائيًا وتعديلًا على إشعار سابق بإيقاف ميزة نهائيًا.
سيتم إيقاف الطريقة
liveBroadcasts.control
نهائيًا في 1 تشرين الأول (أكتوبر) 2020 أو بعد هذا التاريخ. وبعد هذا التاريخ، ستؤدي جميع طلبات البيانات إلى هذه المحاولة إلى ظهور خطأ "محظور" (403)، وسيتم بعد ذلك إزالة الطريقة بالكامل. وسيظل بإمكان العملاء تنفيذ جدولة الإعلانات الخاصة بهم من خلال إضافة تراكب إلى الفيديو المُرسَل إلى خوادم نقل البيانات في YouTube.تم تأجيل تاريخ إيقاف الإعلان عن الإيقاف نهائيًا الذي تم نشره في 16 نيسان (أبريل) 2020، والذي كان من المقرّر أن يكون في 1 أيلول (سبتمبر) 2020، وسيتم الآن في 1 تشرين الأول (أكتوبر) 2020 أو بعد هذا التاريخ. وبالتالي، سيتم في الوقت نفسه إيقاف نهائيًا الميزات المضمّنة في إعلان الإيقاف النهائي وطريقة
liveBroadcasts.control
.
17 تموز (يوليو) 2020
ملاحظة: هذا تعديل على إشعار سابق بشأن إيقاف هذه الميزة نهائيًا.
لن يعود حقل
cdn.format
في مورد liveStream
متاحًا اعتبارًا من 17 آب (أغسطس) 2020، علمًا بأنّه تم إيقافه نهائيًا في نيسان (أبريل) 2016. ولن يتم قبول الطلبات التي لا تزال تستخدم هذا الحقل اعتبارًا من ذلك التاريخ.
إذا كان الرمز البرمجي لا يزال يستخدم الحقل cdn.format
، يجب تعديله لتحديد معدل التحديث ودرجة الدقة بشكل منفصل باستخدام السمتَين
cdn.frameRate
و
cdn.resolution
.
6 تموز (يوليو) 2020
تم تعديل دليل إرسال محتوى بث مباشر على YouTube عبر بروتوكول HLS لإجراء بعض التغييرات:
- تم تعديل المدة المقترَحة لمقطع الوسائط لتصبح من ثانية إلى أربع ثوانٍ.
- قسم جديد يشرح كيفية الحصول على عنوان URL لتحميل المحتوى باستخدام بروتوكول HLS من "استوديو YouTube"
-
تم نقل تعليمات تنسيق قيمة المَعلمة
file
إلى القسم الجديد إكمال عنوان URL لعرض المحتوى وفق بروتوكول HLS. تنطبق هذه التعليمات بغض النظر عمّا إذا تم الحصول على عنوان URL لتحميل HLS من YouTube API أو "استوديو YouTube".
بالإضافة إلى ذلك، تعرض مقارنة بروتوكول نقل المحتوى الجديدة بروتوكولات نقل المحتوى التي تتيحها منصة YouTube وبرامج الترميز المتوافقة مع كل بروتوكول ومعلومات إضافية حول حالات الاستخدام المناسبة لكل بروتوكول.
16 نيسان (أبريل) 2020
يتضمّن هذا التعديل موقعًا جديدًا وإشعارًا بإيقاف ميزة نهائيًا:
-
يتيح مورد
liveBroadcast
الآن استخدام السمةcontentDetails.enableAutoStop
. يشير هذا الحقل إلى ما إذا كان يجب إيقاف البث تلقائيًا بعد مضي حوالي دقيقة من إيقاف مالك القناة لبث الفيديو على بث الفيديو المرتبط.تم تعديل مستند مسار البث لشرح كيفية تغيُّر العملية المفصّلة لإنشاء حدث بث مباشر على YouTube وإدارته في حال ضبط خصائص
contentDetails.enableAutoStart
أوcontentDetails.enableAutoStop
علىtrue
. -
ملاحظة: هذا إشعار بإيقاف ميزة نهائيًا. وستسري هذه التغييرات اعتبارًا من 1 أيلول (سبتمبر) 2020 أو بعده. يُشار أدناه إلى التاريخ الفعلي الذي تصبح فيه التغييرات سارية المفعول باسم تاريخ الإيقاف النهائي.
يوضّح هذا التحديث تغييرًا قد يؤدي إلى حدوث مشاكل. ويؤثر هذا التغيير في تطبيقات عملاء واجهة برمجة التطبيقات التي تستخدم موارد
liveStream
وliveBroadcast
التلقائية للقنوات من أجل بث محتوًى مباشر على YouTube. وعلى وجه التحديد، لن يعود بإمكان معرّف البث ومعرّف البث المرتبطَين بالبث الدائم وبث المحتوى، بدء بثّات جديدة.سيتأثّر طلبك في حال استيفاء أيٍّ ممّا يلي:
- تتحقّق من قيمة سمة
isDefaultBroadcast
لمصدرliveBroadcast
. لن يتم عرض هذا السمة بعد تاريخ الإيقاف النهائي. - تتحقّق من قيمة سمة
isDefaultStream
لمصدرliveStream
. لن يتم عرض هذا السمة بعد تاريخ الإيقاف النهائي. - تستدعي هذه الطريقة
liveBroadcasts.list
وتضبط قيمة المَعلمةbroadcastType
علىpersistent
أوall
. سيتم إيقاف هذه المَعلمة نهائيًا كجزء من هذه التغييرات. اعتبارًا من تاريخ الإيقاف النهائي:- إذا كانت قيمة المَعلمة
broadcastType
هيpersistent
، لن تعرِض الوسيلةliveBroadcasts.list
أي نتائج. - إذا كانت قيمة المَعلمة
broadcastType
هيall
، لن تعرِض الوسيلةliveBroadcasts.list
عمليات البث الثابتة التي كانت متوفّرة قبل ذلك الوقت.
- إذا كانت قيمة المَعلمة
في السنوات القليلة الماضية، كانت YouTube تنشئ تلقائيًا مصدرًا تلقائيًا وبثًا تلقائيًا للقناة عند تفعيل ميزة البث المباشر فيها. كان البث التلقائي متوفّرًا بشكل غير محدود، ولم يكن مرتبطًا بوقت بدء أو انتهاء، ولم يكن بإمكانك حذفه. وبالمثل، تم اعتبار البث التلقائي مستمرًا. وقد كان هذا الإجراء متوفّرًا دائمًا ولم يكن مرتبطًا بحدث معيّن.
اعتبارًا من تاريخ الإيقاف النهائي:
- لن تنشئ YouTube بعد الآن أحداث بث مباشر وبثّات تلقائية. بدلاً من الاعتماد على
الموارد التلقائية، يجب أن يتمكّن عملاء واجهة برمجة التطبيقات من إنشاء موارد
liveBroadcast
وliveStream
وإدارتها وربط هذه الموارد ببعضها. - إذا كان البث المباشر التلقائي والبث التلقائي للقناة قيد التنفيذ، أي أنّ القناة تستخدمهما لبث مباشر في وقت سريان الإيقاف النهائي، لن يتأثّر البث المباشر الجاري. ومع ذلك، بعد انتهاء هذا البث، لن تتمكّن القناة من استخدام البث التلقائي والبث المباشر التلقائي مرة أخرى.
- إذا لم يكن البث المباشر التلقائي والبث التلقائي للقناة قيد التشغيل، ستتجاهل YouTube محاولات استخدام هذه الموارد لبث الفيديو بعد سريان عملية الإيقاف نهائيًا.
إذا كان تطبيقك متأثرًا، يُرجى الرجوع إلى المستندات التالية التي ستساعدك في تعديل تطبيقك ليظل يعمل على النحو المتوقّع بعد هذا التغيير:
- يحاول دليل نقل البيانات الجديد شرح الخطوات التي قد يحتاج المطوّرون إلى اتّخاذها في عملاء واجهة برمجة التطبيقات الذين يستخدمون حاليًا عمليات البث المباشر التلقائية.
- يرشدك دليل رحلة البث خلال عملية مفصّلة توضّح كيفية إنشاء حدث مباشر وإدارته على YouTube. توضّح كل خطوة طلبات البيانات من واجهة برمجة التطبيقات أو الإجراءات الأخرى التي يجب اتّخاذها لإكمال أحد الإجراءات المحدّدة، ويجب أن يتّبع تطبيقك هذه العملية عندما يتوقف YouTube عن إتاحة أحداث البث المباشر التلقائية.
- تتحقّق من قيمة سمة
31 آذار (مارس) 2020
ملاحظة: هذا إشعار بإيقاف ميزة نهائيًا.
تم إيقاف المورد sponsor
وطريقة sponsors.list
نهائيًا واستبدالهما بالمورد member
وطريقة members.list
.
لن تعود طريقة sponsors.list
متاحة اعتبارًا من 30 أيلول (سبتمبر) 2020 أو بعده.
على عملاء واجهة برمجة التطبيقات تعديل طلبات البيانات إلى طريقة sponsors.list
لاستخدام طريقة
members.list
بدلاً من ذلك. يُرجى الاطّلاع على سجلّ المراجعات في YouTube Data API للحصول على مزيد من المعلومات حول المرجع الجديد.
11 آذار (مارس) 2020
تم تعديل قسم نقطة نهاية نقل البيانات
في دليل إرسال محتوى بث مباشر على YouTube عبر بروتوكول HLS لمحاولة توضيح العملية التي يجب أن يستخدمها برنامج الترميز لإكمال قيمة المَعلمة file=
عند إنشاء عنوانَي URL الأساسي والاحتاحتياطي لنقل البيانات.
4 شباط (فبراير) 2020
تم تعديل دليل إرسال محتوى YouTube المباشر عبر بروتوكول HLS
لتوضيح أنّ طلبات DELETE
اختيارية وأنّ نقطة نهاية HLS في YouTube
تتجاهلها. لأسباب تتعلّق بالأداء، تنصح YouTube العملاء بعدم إرسال طلبات
DELETE
.
10 كانون الثاني (يناير) 2020
تتيح واجهة برمجة التطبيقات الآن إمكانية تحديد المحتوى الموجّه إلى الأطفال، والذي تصنّفه YouTube على أنّه "مخصّص للأطفال". مزيد من المعلومات حول المحتوى "المخصّص للأطفال" في "مركز مساعدة YouTube"
-
يتيح مرجع
liveBroadcast
خاصيتين جديدتين لصنّاع المحتوى والمشاهدين من أجل التعرّف على المحتوى "المخصّص للأطفال":-
تتيح السمة
selfDeclaredMadeForKids
لصنّاع المحتوى تحديد ما إذا كان البث المباشر موجّهًا إلى الأطفال. يمكن ضبط هذه السمة عند إنشاء بث من خلالliveBroadcasts.insert
. يُرجى العِلم أنّ هذه السمة لا يتم تضمينها إلا في ردود واجهة برمجة التطبيقات التي تحتوي على مواردliveBroadcast
إذا فوّض مالك القناة طلب واجهة برمجة التطبيقات. -
يتيح الحقل
madeForKids
إلى أي مستخدم لواجهة برمجة التطبيقات استرداد حالة "محتوى مخصّص للأطفال" لبثّ معيّن. على سبيل المثال، قد يتم تحديد الحالة استنادًا إلى قيمة السمةselfDeclaredMadeForKids
. يمكنك الانتقال إلى مركز مساعدة YouTube للحصول على المزيد من المعلومات حول تحديد جمهور قناتك أو فيديوهاتك أو أحداث البث.
-
تتيح السمة
-
في YouTube Data API، يتيح مورد
channel
أيضًا استخدام السمتَينselfDeclaredMadeForKids
وmadeForKids
الجديدتَين.
لقد عدّلنا أيضًا بنود الخدمة وسياسات المطوّرين الخاصة بخدمات YouTube API. يُرجى الاطّلاع على سجلّ تعديلات بنود خدمة YouTube API Services للحصول على مزيد من المعلومات. ستسري التغييرات على بنود خدمة YouTube API Services وسياسات المطوّرين في 10 كانون الثاني (يناير) 2020 بالتوقيت الرسمي للمحيط الهادئ.
20 آب (أغسطس) 2019
تم تعديل قسم المتطلبات في دليل إرسال محتوى بث مباشر على YouTube عبر بروتوكول HLS من خلال إجراء تغييرَين:
- ويوضّح أنّه من أفضل الممارسات تضمين كلّ من الشرائح التي تمّ الاعتراف بها والشرائح الرائعة في كلّ قائمة تشغيل وسائط. تؤدي هذه الممارسة إلى تقليل احتمالية تخطّي مقطع إذا فقدت قائمة تشغيل وسائط من جهة الخادم. على سبيل المثال، يمكنك تضمين ما يصل إلى مقطعين تمّ الاعتراف بهما وما يصل إلى خمسة مقاطع لم يتمّ الاعتراف بها في كلّ قائمة تشغيل وسائط.
- أصبح من المطلوب الآن إرسال قائمة تشغيل وسائط لكل قسم وسائط. يتيح ذلك للخادم استرداد المحتوى بسرعة في حال فقدان قائمة تشغيل وسائط. كانت هذه الممارسة مُدرَجة سابقًا كأحد الاقتراحات.
28 حزيران (يونيو) 2019
تتيح منصة YouTube الآن نقل بيانات "البث المباشر وفق بروتوكول HTTP". وبناءً على ذلك، تتيح سمة ingestionType
لمصدر liveStream
استخدام القيمة الجديدة hls
لتحديد أحداث البث التي تم نقلها إلى YouTube باستخدام بروتوكول HLS.
يقدّم دليل إرسال محتوى بث مباشر على YouTube عبر بروتوكول HLS الجديد إرشادات حول استخدام بروتوكول HLS لبث المحتوى المباشر إلى YouTube من برنامج ترميز. يهدف الدليل إلى مساعدة مورّدي برامج الترميز في إضافة إمكانية إرسال بروتوكول HLS إلى منتجاتهم.
4 نيسان (أبريل) 2019
يتضمّن هذا التحديث التغييرات التالية:
-
تم تعديل المستندات المرجعية لواجهات برمجة التطبيقات لشرح حالات الاستخدام الشائعة لكل طريقة بشكل أفضل وتقديم نماذج رموز برمجية ديناميكية وعالية الجودة من خلال تطبيق "مستكشف واجهات برمجة التطبيقات". راجِع مستندات طريقة
liveBroadcasts.list
للحصول على مثال. يتوفّر الآن عنصران جديدان في الصفحات التي تصف طُرق واجهة برمجة التطبيقات:-
تتيح لك الأداة "مستكشف واجهات برمجة التطبيقات" اختيار نطاقات التفويض وإدخال نماذج لقيم السمات والمَعلمات، ثم إرسال طلبات فعلية لواجهات برمجة التطبيقات والاطّلاع على الردود الفعلية لواجهات برمجة التطبيقات. يوفّر التطبيق المصغّر أيضًا عرضًا بملء الشاشة يعرض عيّنات كاملة من الرموز البرمجية، والتي يتم تعديلها ديناميكيًا لاستخدام النطاقات والقيم التي أدخلتها.
-
يوضّح قسم حالات الاستخدام الشائعة حالة استخدام شائعة واحدة أو أكثر للطريقة الموضّحة في الصفحة. على سبيل المثال، يمكنك استدعاء الطريقة
liveBroadcasts.list
لاسترداد بيانات عن بث معيّن أو لاسترداد بيانات عن أحداث البث الخاصة بالمستخدم الحالي.يمكنك استخدام الروابط في هذا القسم لتعبئة "مستكشف واجهات برمجة التطبيقات" بنماذج من القيم لحالة الاستخدام الخاصة بك أو لفتح "مستكشف واجهات برمجة التطبيقات" في وضع ملء الشاشة مع تعبئة هذه القيم مسبقًا. تهدف هذه التغييرات إلى تسهيل الاطّلاع على نماذج الرموز البرمجية التي يمكن تطبيقها مباشرةً على حالة الاستخدام التي تحاول تنفيذها في تطبيقك.
تتوفّر حاليًا نماذج الرموز البرمجية بلغات Java وJavaScript وPHP وPython وcurl.
-
-
تتضمّن صفحة عيّنات الرموز البرمجية أيضًا واجهة مستخدم جديدة توفّر جميع الميزات نفسها الموضّحة أعلاه. باستخدام هذه الأداة، يمكنك استكشاف حالات الاستخدام الخاصة بالطرق المختلفة وتحميل القيم إلى "مستكشف واجهات برمجة التطبيقات" وفتح "مستكشف واجهات برمجة التطبيقات" في وضع ملء الشاشة للحصول على نماذج رموز برمجية بلغات Java وJavaScript وPHP وPython.
بالإضافة إلى ذلك، تمّت إزالة الصفحات التي كانت تسرد سابقًا عيّنات التعليمات البرمجية المتاحة لـ Java وPHP وPython.
25 شباط (فبراير) 2019
تم تعديل مستندات المرجعَين liveChatMessage
وsuperChatEvent
لتوضيح أنّه يمكن أن يتضمّن كلا المرجعَين الآن معلومات عن ميزة "الملصقات العجيبة". "الملصقات العجيبة" هي نوع من رسائل Super Chat التي تعرض صورة. مثل رسائل Super Chat الأخرى، يشتري المعجب رسالة Super Stickers أثناء بث مباشر على YouTube.
- في مورد
liveChatMessage
، تم ضبط السمةsnippet.type
علىsuperStickerEvent
للإشارة إلى أنّ المورد يحتوي على معلومات عن ملصق Super Stickers. في هذه الحالة، يحتوي المرجع أيضًا على العنصرsnippet.superStickerDetails
الذي يحتوي على معلومات إضافية عن الملصق العجيب. - في مورد
superChatEvent
، يشير العنصر المنطقيsnippet.isSuperStickerEvent
إلى ما إذا كانت رسالة Super Chat هي أيضًا "ملصق عجيب". إذا كان الأمر كذلك، يعني ذلك أنّ عنصرsnippet.superStickerMetadata
يحتوي على تفاصيل إضافية عن الملصق الرائع.
5 نيسان (أبريل) 2018
تم تعديل وصف طريقة superChatEvents.list
ليعكس حقيقة أنّ استجابة واجهة برمجة التطبيقات لم تعُد تتضمّن fanFundingEvents
، والتي تم إيقافها نهائيًا في أوائل عام 2017.
3 نيسان (أبريل) 2017
تمت إضافة نماذج رموز Java جديدة توضّح كيفية إدراج رسائل المحادثة المباشرة وإدراجها وحذفها. تستدعي العيّنات الطرق التالية:
13 شباط (فبراير) 2017
يتضمّن هذا التحديث التغييرات التالية:
-
تعديلات على المراجع والأساليب الحالية
-
تم تعديل الطريقة
liveCuepoints.insert
لتعكس حقيقة أنّ المَعلمةonBehalfOfContentOwner
مطلوبة حاليًا. بالإضافة إلى ذلك، تم تعديل وصف الطريقة لتوضيح أنّه يجب أن يكون هناك حساب مرتبط بمالك محتوى على YouTube ليتم تفويض عمليات الاتصال بهذه الطريقة.
-
9 شباط (فبراير) 2017
يتضمّن هذا التحديث التغييرات التالية:
-
تعديلات على المراجع والأساليب الحالية
-
تتيح لك المَعلمة
hl
الجديدة لطريقةsuperChatEvents.list
تحديد أنّه يجب تنسيق قيمة السمةsnippet.displayString
وفقًا لقواعد لغة معيّنة. وتم تعديل تعريف هذه السمة وفقًا لذلك.يجب أن تكون قيمة المَعلمة رمز لغة مُدرَجًا في القائمة التي تُعرِضها الطريقة
i18nLanguages.list
. القيمة التلقائية هيen
، ما يعني أنّ السلوك التلقائي هو تنسيق سلاسل العرض على النحو الذي سيتم استخدامه باللغة الإنجليزية. على سبيل المثال، يتم تلقائيًا تنسيق سلسلة على النحو التالي:$1.00
بدلاً من$1,00
.
-
1 فبراير 2017
يتضمّن هذا التحديث التغييرات التالية:
-
مراجع وطُرق جديدة
-
يمثّل المرجع الجديد
superChatEvent
رسالة Super Chat اشتراها معجب خلال بث مباشر على YouTube. في البث المباشر للمحادثة على YouTube، تتميّز رسائل Super Chat عن الرسائل الأخرى بطريقتين:- يتم تمييز رسائل Super Chat بلون.
- تظل رسائل Super Chat مثبّتة على شريط الدردشة لفترة زمنية محدّدة.
يعتمد لون رسالة Super Chat ومدة تثبيتها في شريط الدردشة والحد الأقصى لطول الرسالة على مبلغ الشراء. يمكنك الاطّلاع على مزيد من المعلومات حول ميزة "الرسائل المدفوعة" في مركز مساعدة YouTube.
تتيح واجهة برمجة التطبيقات طريقة للتحقّق من أحداث Super Chat في أحداث البث المباشر للقناة خلال آخر 30 يومًا. تعرِض هذه الطريقة أيضًا بيانات عن أحداث "التمويل من المعجبين" (
fanFundingEvents
) من آخر بث مباشر للقناة.
-
-
تعديلات على المراجع والأساليب الحالية
-
تتيح السمة
snippet.type
الآن استخدام القيمةsuperChatEvent
التي تشير إلى أنّ المورد يصف ميزة Super Chat.بالإضافة إلى ذلك، تحتوي السمة
snippet.superChatDetails
الجديدة لمصدرliveChatMessage
ونسبها على معلومات عن حدث Super Chat. -
تتيح الآن سمة
cdn.resolution
لموردliveStream
استخدام القيمة2160p
.
-
-
الأخطاء الجديدة والمحدّثة
-
تتيح واجهة برمجة التطبيقات الأخطاء الجديدة التالية:
تفاصيل الخطأ liveBroadcasts.insert
،liveBroadcasts.update
تعرض الطريقتان liveBroadcasts.insert
وliveBroadcasts.update
أخطاء400
(Bad Request
) للإشارة إلى أنّ موردliveBroadcast
الذي يتم إدراجه أو تعديله يحتوي على قيمة غير صالحة لأيّ من السمتَينcontentDetails.enableEmbed
أوcontentDetails.projection
. سبب الخطأ في الخطأَين الجديدَين هوinvalidEmbedSetting
وinvalidProjection
على التوالي.
-
12 كانون الثاني (يناير) 2017
ملاحظة: هذا إشعار بإيقاف ميزة نهائيًا.
مع إطلاق ميزة Super Chat الجديدة، أوقفنا ميزة "التمويل من المعجبين" نهائيًا، وسيتم إيقاف واجهة برمجة التطبيقات Fan Funding API في 28 شباط (فبراير) 2017. اعتبارًا من ذلك التاريخ:
- لن تُعرِض طريقة
liveChatMessages.list
بعد الآن الرسائل التي يكون لهاsnippet.type
=fanFundingEvent
. وبالمثل، لن تحتوي مواردliveChatMessage
بعد الآن على عنصرsnippet.fanFundingEventDetails
. - لن تُعرِض طريقة
fanFundingEvents.list
بيانات بعد ذلك.
11 آب (أغسطس) 2016
يتضمّن هذا التحديث التغييرات التالية:
-
إنّ بنود الخدمة المنشورة حديثًا لخدمة YouTube API ("البنود المعدّلة") والتي تمت مناقشتها بالتفصيل في مدوّنة فريق YouTube الهندسي والمطوّرين، تتضمّن مجموعة كبيرة من التعديلات على بنود الخدمة الحالية. بالإضافة إلى الأحكام المعدَّلة التي ستسري اعتبارًا من 10 شباط (فبراير) 2017، يتضمّن هذا التعديل العديد من المستندات الداعمة للمساعدة في شرح السياسات التي يجب أن يتّبعها المطوّرون.
يمكنك الاطّلاع على المجموعة الكاملة من المستندات الجديدة في سجلّ النُسخ السابقة للبنود المعدَّلة. بالإضافة إلى ذلك، سيتم أيضًا شرح التغييرات المستقبلية على "البنود المعدّلة" أو على هذه المستندات الداعمة في سجلّ المراجعات هذا. يمكنك الاشتراك في خلاصة RSS تعرض التغييرات في سجلّ النُسخ السابقة من رابط في هذا المستند.
20 أيار (مايو) 2016
تتيح منصة YouTube الآن نقل بيانات DASH. وبناءً على ذلك، تتيح السمة ingestionType
لمصدر liveStream
استخدام القيمة الجديدة dash
لتحديد أحداث البث التي يتم نقلها إلى YouTube باستخدام DASH.
يقدّم دليل إرسال محتوى YouTube المباشر عبر DASH الجديد إرشادات حول استخدام تنسيق DASH Delivery لبث البيانات المباشرة على YouTube من برنامج ترميز. ويهدف إلى مساعدة مورّدي برامج الترميز على إضافة ميزة تسليم DASH إلى منتجاتهم.
18 نيسان (أبريل) 2016
يتضمّن هذا التحديث التغييرات التالية:
-
تعديلات على المراجع والأساليب الحالية
liveStream
تعديلات الموارد-
يتيح YouTube الآن البث بدقة 1440p بمعدّل 30 أو 60 لقطة في الثانية.
بالإضافة إلى ذلك، يحتوي مورد
liveStream
على سمات جديدة لتحديد معدل عرض اللقطات ودرجة دقة بيانات الفيديو الواردة:الخصائص cdn.frameRate
عدد اللقطات في الثانية لبيانات الفيديو الواردة القيم الصالحة هي 30fps
و60fps
.cdn.resolution
درجة دقة بيانات الفيديو الواردة القيم الصالحة للسمة هي: 1440p
و1080p
و720p
و480p
و360p
و240p
. -
تمّ إيقاف سمة
cdn.format
في المرجعliveStream
نهائيًا، وذلك بالتزامن مع طرح السمتَينcdn.frameRate
وcdn.resolution
في المرجعliveStream
. تحدّد سمةcdn.format
درجة الدقة ومعدّل عرض اللقطات في قيمة واحدة.ننصحك بالانتقال إلى الحقول المتوافقة حديثًا. في هذه الأثناء، سيستمر عمل
cdn.format
. بالإضافة إلى ذلك، يتم حاليًا تنفيذ طلبات إدراج أحداث البث المباشر شرط تحديد قيم للسمةcdn.format
أو السمتَينcdn.frameRate
وcdn.resolution
. في حال تقديم قيم لكل الخصائص الثلاث، قد تعرِض واجهة برمجة التطبيقات خطأً إذا كانت القيم غير متطابقة.يُرجى العِلم أنّه على الرغم من إيقاف سمة
cdn.format
نهائيًا، فإنّها تتيح الآن قيمتَين جديدتَين، وهما1440p
و1440p_hfr
، لتعكس توافق واجهة برمجة التطبيقات مع أحداث البث بدقة 1440p بمعدّل 30 أو 60 لقطة في الثانية.
-
liveBroadcast
تعديلات الموارد-
يحتوي مورد
liveBroadcast
على السمات الجديدة التالية:الخصائص contentDetails.boundStreamLastUpdateTimeMs
تاريخ ووقت آخر تعديل على البث المباشر المُشار إليه في سمة contentDetails.boundStreamId
للبثcontentDetails.projection
تنسيق الإسقاط للبث القيمة التلقائية للسمة هي rectangular
. القيم الصالحة للسمة هي360
وrectangular
. -
تم تعديل تعريف سمة
statistics.totalChatCount
لمصدرliveBroadcast
للإشارة إلى أنّ قيمة السمة لا تظهر إلا إذا كان البث يحتوي على رسالة محادثة واحدة على الأقل.
-
liveChatMessage
تعديلات الموارد-
تتيح السمة
snippet.type
قيمتَين جديدتَين، وهماmessageDeletedEvent
وuserBannedEvent
، اللتان تتوافقان مع السمات الجديدة الموضّحة في النقطة التالية. تم أيضًا تعديل تعريف السمةsnippet.authorChannelId
لشرح ما تحدّده قيمة السمة لأنواع الرسائل الجديدة هذه. -
يحتوي مورد
liveChatMessage
على السمات الجديدة التالية:الخصائص snippet.messageDeletedDetails
يحتوي هذا العنصر على معلومات عن رسالة حذفها مشرف المحادثة. لا يظهر الكائن إلا إذا كانت قيمة السمة snippet.type
هيmessageDeletedEvent
.snippet.userBannedDetails
يحتوي هذا العنصر على معلومات عن مستخدم تم حظره من المشاركة في المحادثة. يحتوي العنصر أيضًا على معلومات عن الحظر نفسه، أي ما إذا كان الحظر دائمًا أو مؤقتًا. إذا كان الحظر مؤقتًا، تحدّد إحدى سمات العنصر مدة الحظر.
لا يظهر هذا العنصر إلا إذا كانت قيمة السمةsnippet.type
هيuserBannedEvent
.
-
-
الأخطاء الجديدة والمحدّثة
-
تتيح واجهة برمجة التطبيقات الأخطاء الجديدة التالية:
تفاصيل الخطأ liveBroadcasts.bind
تُرجع الطريقة liveBroadcasts.bind
خطأ403
(Forbidden
) للإشارة إلى أنّ المستخدم أرسل عددًا كبيرًا جدًا من الطلبات خلال إطار زمني معيّن. سبب الخطأ هوuserRequestsExceedRateLimit
.
تتيح الطريقتانliveBroadcasts.insert
وliveBroadcasts.update
الخطأ نفسه.liveStreams.insert
تتيح طريقة liveStreams.insert
أربعة أخطاء جديدة من النوع400
(Bad Request
) ترصد قيمة خاصية غير صالحة في موردliveStream
الذي حاول الطلب إدراجه. تحدد القائمة التالية أسباب الأخطاء والسمات المرتبطة بها:
invalidFormat
:cdn.format
invalidFrameRate
:cdn.frameRate
invalidIngestionType
:cdn.ingestionType
invalidResolution
:cdn.resolution
liveStreams.insert
تتيح طريقة liveStreams.insert
خطأَين جديدَين من النوع400
(Bad Request
)، يشير كل منهما إلى عدم توفّر قيمة مطلوبة في موردliveStream
الذي حاول الطلب إدراجه. تحدد القائمة التالية أسباب الأخطاء والسمات المرتبطة بها:
frameRateRequired
:cdn.frameRate
resolutionRequired
:cdn.resolution
liveStream
، يجب تحديد قيمة للسمةcdn.format
أو للسمتَينcdn.frameRate
وcdn.resolution
.
- تعرِض واجهة برمجة التطبيقات خطأ
formatRequired
إذا لم تحدِّد قيمة لأيّ من السمات الثلاث. - تعرض واجهة برمجة التطبيقات خطأ
frameRateRequired
إذا حدّدت قيمة لسمةcdn.resolution
ولكن ليس لسمةcdn.frameRate
. - تعرض واجهة برمجة التطبيقات خطأ
resolutionRequired
إذا حدّدت قيمة لسمةcdn.frameRate
ولكن ليس لسمةcdn.resolution
.
liveStreams.update
تعرض الطريقة liveStreams.update
خطأ403
(Forbidden
) إذا حاول الطلب تعديل قيمة أيّ من السمات غير القابلة للتغيير التالية:cdn.format
cdn.frameRate
cdn.ingestionType
cdn.resolution
reason
في ردّ الخطأ هوliveStreamModificationNotAllowed
.
-
18 كانون الأول (ديسمبر) 2015
تشترط قوانين الاتحاد الأوروبي تقديم بيانات إفصاح معيّنة للمستخدمين النهائيين في الاتحاد الأوروبي والحصول على موافقاتهم. لذلك، عليك الالتزام بسياسة موافقة المستخدم في الاتحاد الأوروبي للمستخدمين النهائيين في الاتحاد الأوروبي. أضفنا إشعارًا بهذا الشرط في بنود خدمة YouTube API.
17 كانون الأول (ديسمبر) 2015
يتضمّن هذا التحديث التغييرات التالية:
-
مراجع وطُرق جديدة
-
تتيح واجهة برمجة التطبيقات العديد من الموارد الجديدة لدعم وظيفة الدردشة في أحداث البث المباشر. تتيح منصة YouTube ميزة المحادثة المباشرة أثناء البث المباشر النشط، وتتيح هذه المراجع وأنظمتها استرداد رسائل المحادثة بالإضافة إلى الوظائف الإدارية للمحادثة.
الموارد liveChatMessage
يمثّل هذا المرجع رسالة في محادثة مباشرة على YouTube. يتيح YouTube استخدام عدّة أنواع من الرسائل، بما في ذلك الرسائل النصية وأحداث "التمويل من المعجبين". تحدد بعض أنواع الرسائل مرحلة معيّنة من المحادثة، مثل بداية فترة مخصّصة للجهات الراعية فقط أو نهاية المحادثة. تتيح واجهة برمجة التطبيقات طرقًا لعرض رسائل المحادثة المباشرة وإدراجها وحذفها. liveChatModerators
يحدِّد هذا المورد مشرف محادثة. يمكن للمشرفين تنفيذ بعض الوظائف الإدارية، مثل حظر المستخدمين من الدردشة أو إزالة الرسائل. تتيح واجهة برمجة التطبيقات طرقًا لإدراج مشرفي المحادثة المباشرة وإدراجها وحذفها. liveChatBans
يحدِّد هذا المرجع مستخدمًا تم حظره من نشر رسائل في محادثة مباشرة معيّنة. يمكن أن تكون عمليات الحظر مؤقتة أو دائمة. تتيح واجهة برمجة التطبيقات طرقًا لإدراج عمليات حظر المحادثة المباشرة وحذفها. fanFundingEvents
يمثّل هذا المورد حدثًا في ميزة "التمويل من المعجبين" على قناة على YouTube. من خلال ميزة "التمويل من المعجبين"، يمكن للمشاهدين تقديم دعم مالي لصنّاع المحتوى على YouTube لمرة واحدة.
تعرض طريقةfanFundingEvents.list
في واجهة برمجة التطبيقات أحداث "التمويل من المعجبين" في القناة. إنّ أحداث "التمويل من المعجبين" التي يتمّ بدؤها من خلال محادثة مباشرة أثناء بث مباشر تملكه القناة تؤدي أيضًا إلى ظهور رسالةfanFundingEvent
في المحادثة المباشرة للبث.
يمكنك الاطّلاع على مزيد من المعلومات حول ميزة "التمويل من المعجبين" في مركز مساعدة YouTube.sponsors
يحدِّد المورد sponsor
جهة رعاية قناة على YouTube. يدفع الراعي رسومًا شهرية للقناة. تظهر شارة بجانب رسائل الجهات الراعية في المحادثات المباشرة على القناة، ويمكن للجهات الراعية أيضًا المشاركة في المحادثات المباشرة الحصرية للجهات الراعية في القناة، إذا كانت هذه المحادثات متاحة.
تعرض طريقةsponsors.list
في واجهة برمجة التطبيقات قائمة بجهات رعاية القناة. عندما يشترك المستخدمون في رعاية قناة أثناء بث مباشر تملكها تلك القناة، تضيف واجهة برمجة التطبيقات أيضًا رسالةnewSponsorEvent
إلى المحادثة المباشرة للبث.
يمكنك الاطّلاع على مزيد من المعلومات حول عروض الرعاية في مركز مساعدة YouTube.
-
-
تعديلات على المراجع والأساليب الحالية
-
يحتوي مورد
liveBroadcast
على السمات الجديدة التالية:الخصائص snippet.liveChatId
معرّف المحادثة المباشرة في YouTube للبث باستخدام هذا المعرّف، يمكنك استخدام طرق مورد liveChatMessage
لاسترداد رسائل المحادثة أو إدراجها أو حذفها. يمكنك أيضًا إضافة مشرفين إلى المحادثة أو إزالتهم، وحظر المستخدمين من المشاركة في المحادثات المباشرة، أو إزالة الحظر الحالي.contentDetails.closedCaptionsType
ملاحظة: تحلّ هذه السمة مكان سمة contentDetails.enableClosedCaptions
.
تشير هذه السمة إلى ما إذا كانت ميزة الترجمة والشرح مفعّلة في البث، وإذا كان الأمر كذلك، إلى نوع الترجمة والشرح الذي تقدّمه:closedCaptionsDisabled
: ميزة الترجمة والشرح غير مفعَّلة في البث المباشر.closedCaptionsHttpPost
: عليك إرسال الترجمة والشرح عبر HTTP POST إلى عنوان URL لتحميل المحتوى مرتبط بالبث المباشر.closedCaptionsEmbedded
: سيتم ترميز مقاطع الترجمة والشرح في بث الفيديو باستخدام تنسيقَي EIA-608 و/أو CEA-708.
contentDetails.enableClosedCaptions
تم إيقاف هذه السمة نهائيًا اعتبارًا من 17 كانون الأول (ديسمبر) 2015. بدلاً من ذلك، استخدِم السمة contentDetails.closedCaptionsType
. بالنسبة إلى عملاء واجهة برمجة التطبيقات الذين يستخدمون هذا الموقع حاليًا:- إنّ ضبط قيمة السمة على
true
يعادل ضبط سمةcontentDetails.closedCaptionsType
علىclosedCaptionsHttpPost
. - إنّ ضبط قيمة السمة على
false
يعادل ضبط السمةcontentDetails.closedCaptionsType
علىclosedCaptionsDisabled
.
-
تتيح لك المَعلمة
broadcastType
الجديدة لطريقةliveBroadcasts.list
فلترة استجابة واجهة برمجة التطبيقات لتضمين أحداث البث أو عمليات البث الثابتة أو جميع عمليات البث.البثّ الثابت هو بثّ متوفّر دائمًا وغير مرتبط بحدث معيّن. على وجه التحديد، البث التلقائي للقناة هو بث دائم، ويمكن الوصول إليه من خلال لوحة بيانات البث المباشر في "استوديو YouTube". أما البثّات الأخرى على القناة، فهي بثّات أحداث.
-
-
يُبلغ حقل
status.healthStatus.configurationIssues[].type
لموردliveStream
عن أخطاء حالة الصحة الجديدة التالية:الأخطاء audioTooManyChannels
يتضمن الصوت أكثر من قانتين في حين يمكن استخدام قناة (أحادية) واحدة أو قناتين (استريو) فقط. يرجى تصحيح عدد القنوات الصوتية. frameRateHigh
إنّ العدد الحالي للقطات في الثانية مرتفع جدًا. يُرجى ضبط عدد اللقطات في الثانية على لقطة في الثانية أو أقل.%(framerate)s
-
تم تصحيح تاريخ نشر تحديث المستندات السابق.
-
الأخطاء الجديدة والمحدّثة
-
بالإضافة إلى الأخطاء المحدّدة للموارد الجديدة المُدرَجة أعلاه، تتيح واجهة برمجة التطبيقات الأخطاء الجديدة التالية:
تفاصيل الخطأ liveBroadcasts.update
رمز استجابة HTTP forbidden (403)
السبب closedCaptionsTypeModificationNotAllowed
الوصف لا يمكن تعديل قيمة contentDetails.closedCaptionsType
إلا عندما يكون البث في الحالةcreated
أوready
.liveBroadcasts.update
رمز استجابة HTTP invalidValue (400)
السبب invalidEnableClosedCaptions
الوصف في مورد البث المباشر، لا تتوافق قيمة السمة contentDetails.enableClosedCaptions
مع قيمة الإعدادcontentDetails.closedCaptionType
. عدِّل المرجع لتضمين موقع واحد فقط من الموقعَين، ثم أعِد إرسال الطلب.
-
19 أغسطس 2015
يتضمّن هذا التحديث التغييرات التالية:
-
مراجع وطُرق جديدة
-
ملاحظة: إنّ مستندات مرجع
liveChat
وطرقه سرية ولا تظهر إلا لمجموعة محدّدة من شركاء YouTube.يحتوي المرجع
liveChat
الجديد على تعليق تم نشره أثناء بث مباشر على YouTube. تتيح واجهة برمجة التطبيقات طريقتَين لهذا المورد:الطُرق liveChats.list
عرض رسائل المحادثة المباشرة لبث معيّن liveChats.insert
أنشئ رسالة محادثة جديدة. لا يمكن استرداد رسائل المحادثة المباشرة ونشرها إلا أثناء بث مباشر.
-
-
تعديلات على المراجع والأساليب الحالية
-
يحتوي مورد
liveStream
على السمات الجديدة التالية:الخصائص snippet.isDefaultStream
تشير إلى ما إذا كان هذا البث هو البث التلقائي للقناة. يبقى البث التلقائي للقناة متوفّرًا إلى أجل غير مسمى، ولا يتضمّن وقت بدء أو وقت انتهاء، ولا يمكن حذفه. اطّلِع على تعريف الموقع الإلكتروني للحصول على مزيد من المعلومات عن آلية عمل أحداث البث التلقائية. status.healthStatus
يحتوي هذا العنصر على معلومات يمكن استخدامها لتحديد مشاكل البث وتشخصيها وحلّها. يحتوي العنصر على عدد من السمات الفرعية لمساعدتك في تقييم حالة بث الفيديو المباشر.
على وجه الخصوص، يسرد عنصرstatus.healthStatus.configurationIssues[]
المشاكل التي تؤثّر في بث الفيديو. يسرد مستند جديد بعنوان مشاكل الضبط لموارد البث المباشر جميع المشاكل التي تُبلغ عنها واجهة برمجة التطبيقات.contentDetails.isReusable
يشير ذلك إلى ما إذا كان البث قابلاً لإعادة الاستخدام، ما يعني أنّه يمكن ربطه بأحداث بث متعددة. من الشائع أن يعيد مقدّمو البث استخدام البث نفسه في العديد من أحداث البث المختلفة إذا كانت هذه الأحداث تحدث في أوقات مختلفة. -
يحتوي مورد
liveBroadcast
على السمات الجديدة التالية:الخصائص snippet.isDefaultBroadcast
يشير هذا الحقل إلى ما إذا كان هذا البث هو البث التلقائي للقناة. عندما يتم تفعيل ميزة البث المباشر في قناة على YouTube، تنشئ YouTube بثًا مباشرًا وبثًا تلقائيًا للقناة. يحدِّد البث كيفية إرسال مالك القناة لفيديو مباشر إلى YouTube، ويشير البث إلى الطريقة التي يمكن للمشاهدين من خلالها مشاهدة البث التلقائي. اطّلِع على تعريف الموقع الإلكتروني للحصول على مزيد من المعلومات عن آلية عمل عمليات البث التلقائية. contentDetails.enableLowLatency
يشير إلى ما إذا كان يجب ترميز هذا البث لتوفير بث بوقت استجابة منخفض. يمكن أن تقلّل عملية البث ذات الاستجابة المنخفضة من الوقت الذي يستغرقه ظهور الفيديو للمستخدمين الذين يشاهدون البث، إلا أنّها يمكن أن تؤثّر أيضًا في درجة الدقة لدى مشاهدي البث. statistics.totalChatCount
إجمالي عدد رسائل المحادثة المباشرة المرتبطة بالبث تظهر السمة وقيمتها إذا كان البث مرئيًا للمستخدم وكانت ميزة المحادثة المباشرة مفعّلة. يُرجى العِلم أنّ هذه السمة لن تحدّد قيمة بعد انتهاء البث. وبالتالي، لن يحدِّد هذا السمة عدد رسائل المحادثة في فيديو أرشيف لبث مباشر مكتمل.
-
-
الأخطاء الجديدة والمحدّثة
-
بالإضافة إلى الأخطاء المحدّدة لمورد
liveChat
الجديد، تتيح واجهة برمجة التطبيقات الخطأ الجديد التالي:تفاصيل الخطأ liveStreams.update
رمز استجابة HTTP forbidden (403)
السبب liveStreamModificationNotAllowed
الوصف لا تسمح لك واجهة برمجة التطبيقات بتغيير بث قابل لإعادة الاستخدام إلى بث غير قابل لإعادة الاستخدام أو العكس. لمزيد من المعلومات، يُرجى الاطّلاع على التعرّف على البث المباشر والبث.
-
21 أيار (مايو) 2015
يتضمّن هذا التحديث التغييرات التالية:
-
يتيح YouTube الآن بث الفيديوهات المباشرة بمعدّل 60 لقطة في الثانية، ما يعني تشغيلًا أكثر سلاسة للألعاب والفيديوهات الأخرى التي تتضمّن أحداثًا سريعة. عند بدء بث مباشر على YouTube بمعدّل 60 لقطة في الثانية، توفّر منصة YouTube البث أيضًا بمعدّل 30 لقطة في الثانية على الأجهزة التي لا تتيح مشاهدة المحتوى بمعدّل لقطات مرتفع بعد.
تتيح سمة
cdn.format
لمصدرliveStream
قيمتَين جديدتَين لهذه الميزة:720p_hfr
و1080p_hfr
.يمكنك الانتقال إلى مدوّنة صنّاع المحتوى في YouTube للحصول على مزيد من المعلومات حول هذه الميزة.
21 آب (أغسطس) 2014
يتضمّن هذا التحديث التغييرات التالية:
-
تم تعديل تعريف المَعلمة
walltime
في الطريقةliveBroadcasts.control
للإشارة إلى أنّه تم تحديد قيمة السمة بتنسيق ISO 8601 (YYYY-MM-DDThh:mm:ss.sssZ
). -
تتيح واجهة برمجة التطبيقات الآن الأخطاء التالية:
نوع الخطأ تفاصيل الخطأ الوصف insufficientPermissions
liveStreamingNotEnabled
تُعرِض جميع طرق liveBroadcast
وliveStream
هذا الخطأ إذا لم يتم تفعيل بث الفيديو المباشر على YouTube للمستخدم الذي فوّض طلب البيانات من واجهة برمجة التطبيقات. قد تتوفّر تفاصيل توضّح سبب عدم تمكّن المستخدم من بث فيديو مباشر في إعدادات قناته على الرابط https://www.youtube.com/features.rateLimitExceeded
userRequestsExceedRateLimit
تُعرِض الطريقتان liveBroadcasts.insert
وliveStreams.insert
هذا الخطأ للإشارة إلى أنّ المستخدم أرسل عددًا كبيرًا جدًا من الطلبات خلال فترة زمنية معيّنة.
2 أيار (مايو) 2014
يتضمّن هذا التحديث التغييرات التالية:
-
تم تعديل أوصاف مورد
liveStream
وطريقةliveBroadcasts.bind
للإشارة إلى أنّه لا يمكن ربط البث إلا ببث فيديو واحد، ولكن يمكن ربط بث الفيديو بأكثر من بث واحد. هذا التغيير هو مجرد تصحيح للمستندات، ولم تتغيّر وظيفة واجهة برمجة التطبيقات الأساسية. -
تم تعديل السمة
contentDetails.monitorStream.enableMonitorStream
لمصدرliveBroadcast
لتوضيح أنّه إذا كانت قيمة السمة هيtrue
، يجب نقل البث إلى الحالةtesting
قبل الانتقال إلى الحالةlive
. (إذا كانت قيمة السمة هيfalse
، لا يمكن أن يتضمّن البث مرحلةtesting
، لذا يمكنك نقل البث مباشرةً إلى الحالةlive
. -
تم تعديل السمة
settings.offsetTimeMs
لمصدرliveCuepoint
لتوضيح أنّه يجب عدم تحديد قيمة للسمة إذا لم يكن البث يتضمّن بثًا للتتبّع. -
تتيح الآن جميع طرق استخدام المَعلمتَين
liveBroadcast
وliveStream
استخدام المَعلمتَينonBehalfOfContentOwner
وonBehalfOfContentOwnerChannel
. تتيح لك هذه المَعلمات استخدام بيانات اعتماد التفويض نفسها لإكمال طلبات واجهة برمجة التطبيقات لقنوات مختلفة مرتبطة بمالك المحتوى نفسه. -
تم تعديل مستندات طريقة
liveCuepoints.insert
للإشارة إلى أنّه يمكنك ضبط قيمة للسمةsettings.walltime
عند استدعاء هذه الطريقة. -
تحدّد مستندات الأخطاء الآن رمز استجابة HTTP لكل نوع من أنواع الأخطاء.
-
تتيح واجهة برمجة التطبيقات الآن الخطأ التالي:
نوع الخطأ تفاصيل الخطأ الوصف insufficientPermissions
livePermissionBlocked
تُعرِض الطرق liveBroadcasts.insert
وliveBroadcasts.transition
وliveStreams.insert
هذا الخطأ إذا لم يتمكّن المستخدم الذي فوّض الطلب من بث فيديو مباشر على YouTube. قد تتوفّر تفاصيل توضّح سبب عدم تمكّن المستخدم من بث فيديو مباشر في إعدادات قناته على الرابط https://www.youtube.com/features. -
تم تعديل الخطأ
invalidScheduledStartTime
في الطريقةliveBroadcasts.insert
لتوضيح أنّ وقت البدء المُجدوَل يجب أن يكون قريبًا بما يكفي من التاريخ الحالي لكي يمكن جدولة البث بشكل موثوق في ذلك الوقت.
13 كانون الأول (ديسمبر) 2013
يتضمّن هذا التحديث التغييرات التالية:
-
تحدّد سمة
status.recordingStatus
الجديدة لمصدرliveBroadcast
الحالة الحالية للبث. -
تشير السمة
contentDetails.enableClosedCaptions
الجديدة لمصدرliveBroadcast
إلى ما إذا كان يمكن نقل مقاطع الترجمة والشرح إلى البث. يمكن ضبط قيمة السمة عند إدراج بث أو تعديله، ولكن لا يمكن تعديلها بعد أن يصبح البث في الحالةtesting
أوlive
. إذا ضبطت هذه السمة علىtrue
، سيحدّد الموردliveStream
المرتبط بالبث عنوان URL لتحميل المحتوى لاستخدامه في الترجمة والشرح للبث. -
يتيح الآن الحقل
snippet.scheduledEndTime
الخاص بمصدرliveBroadcast
البثّات التي تم تحديد موعدها لمواصلة البثّ إلى أجل غير مسمى. بعد إجراء هذا التغيير، لم تعُد السمة مطلوبة في طلباتliveBroadcasts.insert
وliveBroadcasts.update
.
في حال استرداد موردliveBroadcast
لا يحدّد قيمة لهذه السمة، سيتم جدولة البث لمواصلته إلى أجل غير مسمى. وبالمثل، إذا استدعيت الطريقةliveBroadcasts.insert
أوliveBroadcasts.update
ولم تحدِّد قيمة لهذا السمة، سيتم جدولة البث لمواصلته إلى أجل غير مسمى. -
لا يمكن الآن ضبط السمة
contentDetails.recordFromStart
لموردliveBroadcast
، والتي كانت لها قيمة تلقائية هيtrue
، علىfalse
إلا إذا كان مسموحًا للقناة الإذاعية بإيقاف التسجيلات للبث المباشر.إذا لم تكن قناتك تملك الإذن بإيقاف التسجيلات، وحاولت إدراج بث تم ضبط السمة
recordFromStart
فيه علىfalse
، ستعرض واجهة برمجة التطبيقات خطأForbidden
. بالإضافة إلى ذلك، إذا لم تكن قناتك تملك هذا الإذن وحاولت تعديل بث لضبط سمةrecordFromStart
علىfalse
، ستعرض واجهة برمجة التطبيقات خطأmodificationNotAllowed
. -
لم يعُد المورد
liveBroadcast
يحتوي على سمةenableArchive
، والتي تم ذكرها في أوصاف السمتَينcontentDetails.enableDvr
وcontentDetails.enableEmbed
. -
تم تعديل قائمة القيم الصالحة لسمة
status.lifeCycleStatus
في موردliveBroadcast
لتشمل وصفًا لكل حالة. -
تحدّد السمة
settings.walltime
الجديدة لمصدرliveCuepoint
التاريخ والوقت اللذَين يجب إدراج نقطة التقديم/الترجيع فيهما. تعرِض واجهة برمجة التطبيقات خطأً إذا حاول طلب إدراج نقطة إشارة تحدّد قيمة لهذا الموقع وللموقعsettings.offsetTimeMs
. -
يحتوي عنصر
contentDetails
الجديد في موردliveStream
على معلومات عن البث. السمة الوحيدة للعنصر حاليًا هيcontentDetails.closedCaptionsIngestionUrl
، التي تحدّد عنوان URL لعرض الترجمة والشرح المرتبط ببث الفيديو. -
تم تعديل قائمة القيم الصالحة لسمة
status.streamStatus
في موردliveStream
لتشمل وصفًا لكل حالة. -
تتيح لك المَعلمة
walltime
الجديدة لطريقةliveBroadcasts.control
تحديد التاريخ والوقت الذي سيحدث فيه تغيير في لوحة العرض. تعرِض واجهة برمجة التطبيقات خطأً إذا حدّد الطلب قيمة لهذه المَعلمة وللمَعلمةoffsetTimeMs
. -
في استجابة واجهة برمجة التطبيقات لطلب
liveBroadcasts.list
، تغيّرت قيمة السمةkind
منyoutube#liveBroadcastList
إلىyoutube#liveBroadcastListResponse
. -
في استجابة واجهة برمجة التطبيقات لطلب
liveStreams.list
، تغيّرت قيمة السمةkind
منyoutube#liveStreamList
إلىyoutube#liveStreamListResponse
. -
تم إيقاف سمة
eventId
نهائيًا من كلّ منliveBroadcastListResponse
وliveStreamListResponse
. -
تتيح واجهة برمجة التطبيقات الأخطاء الجديدة التالية:
نوع الخطأ تفاصيل الخطأ الوصف invalidValue
conflictingTimeFields
تعرض طريقة liveBroadcasts.control
هذا الخطأ إذا كان طلبك يحدّد قيمًا للمعلَمتَينoffsetTimeMs
وwalltime
. يمكن أن يحذف الطلب كلتا المَعلمتَين أو يحدّد قيمة لأحدهما.invalidValue
invalidWalltime
تعرض الطريقة liveBroadcasts.control
هذا الخطأ إذا كانت قيمة المَعلمةwalltime
غير صالحة.forbidden
enableClosedCaptionsModificationNotAllowed
تُعرِض طريقة liveBroadcasts.update
هذا الخطأ إذا حاولت تعديل قيمةcontentDetails.enableClosedCaptions
ولم تكن حالة البث هيcreated
أوready
.invalidValue
conflictingTimeFields
تعرض طريقة liveCuepoints.insert
هذا الخطأ إذا كان طلبك يحدّد قيمًا للسمتَينsettings.offsetTimeMs
وsettings.walltime
. يمكن أن يحذف الطلب كلا السمتَين أو يحدّد قيمة لأحد السمتَين.بالإضافة إلى ذلك، لم تعُد طريقة
liveStreams.update
تتيح الخطأcdnRequired
المشابه للخطأ الذي تتيحه طريقةliveStreams.insert
.
10 أيار (مايو) 2013
يتضمّن هذا التحديث التغييرات التالية:
-
لم تعُد YouTube تحدّد الميزات والخدمات التجريبية لواجهة برمجة التطبيقات. بدلاً من ذلك، نقدّم الآن قائمة بواجهات برمجة تطبيقات YouTube الخاضعة لسياسة الإيقاف.
2 أيار (مايو) 2013
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح لك الطريقة الجديدة
liveBroadcasts.control
تبديل إعدادات العرض لشاشة عرض تظهر في بث مباشر جارٍ. إذا كان بث البث يتأخّر، يمكنك أيضًا استخدام هذه الطريقة لتحديد مدة زمنية عندما يحدث تغيير اللوحة المطلوبة. -
تم تعديل تعريفات السمات التالية لتوضيح أنّه يجب ضبط قيم السمات في حال تعديل جزء
contentDetails
من موردliveBroadcast
: -
لم يعُد
status.streamStatus
لمصدرliveStream
يقبل القيمةdeleted
كحالة بث محتملة. -
تمّت مراجعة المعلومات التي تعرضها واجهة برمجة التطبيقات للعديد من رسائل الخطأ لشرح سبب حدوث أخطاء معيّنة بشكل أفضل. تتيح واجهة برمجة التطبيقات أيضًا العديد من الأخطاء الجديدة.
27 آذار (مارس) 2013
يتضمّن هذا التحديث التغييرات التالية:
-
تغيّرت السمات التالية في المورد
liveBroadcast
:- تمت إعادة تسمية الموقع
startWithSlateCuepoint
إلىstartWithSlate
. - تمت إعادة تسمية الموقع
enableArchive
إلىrecordFromStart
. - تم إيقاف عنصر
slateSettings
نهائيًا وإزالته من المستندات. وتمّت أيضًا إزالة رسائل الخطأ المرتبطة بكائنslateSettings
أو بخصائصه. أخيرًا، تمت إزالة قسم "عرض اللوحات" من دليل البدء.
- تمت إعادة تسمية الموقع
-
لم تعُد واجهة برمجة التطبيقات تتيح إدراج لوحات إعلانية أثناء عرض الفيديو باستخدام الطريقة
liveCuepoints.insert
. تم تحديث المستندات التالية لتعكس هذا التغيير:-
لم تعُد هذه الوظيفة مذكورة في صفحة الفهرس ودليل البدء والدليل التوجيهي رحلة البث.
-
لم تعُد السمة
settings.cueType
لمصدرliveCuepoint
تتيح استخدامslate
كقيمة للسمة. (القيمة الوحيدة المسموح بها هيad
. -
تم إيقاف سمة
settings.eventState
في الموردliveCuepoint
نهائيًا وإزالتها من المستندات.
-
18 آذار (مارس) 2013
يتضمّن هذا التحديث التغييرات التالية:
-
تم تعديل جميع رسائل الخطأ في واجهة برمجة التطبيقات لشرح الأخطاء المحتمَلة بوضوح أكبر، وتقديم إرشادات حول كيفية إصلاحها متى أمكن ذلك.
-
قد تعرض واجهة برمجة التطبيقات الآن عدة أخطاء جديدة. تحدِّد القائمة أدناه الخطأ وطريقة واجهة برمجة التطبيقات التي قد تؤدي إلى ظهور هذا الخطأ:
liveBroadcasts.insert
– يجب أن يكون وقت انتهاء البث المجدوَل بعد وقت بدئه المجدوَل.liveBroadcasts.insert
: يحدّد البث حالة خصوصية غير صالحة.liveBroadcasts.update
: لا يحتوي المورد على قيمة للسمةcontentDetails.enableArchive
أو لا يضبطها.liveBroadcasts.update
: لا يحتوي المورد على قيمة للسمةcontentDetails.enableContentEncryption
أو لا يضبطها.liveBroadcasts.update
: لا يحتوي المورد على قيمة للسمةcontentDetails.enableDvr
أو لا يضبطها.liveStreams.insert
– يجب أن يتراوح طول عنوان المقتطف بين حرف واحد و128 حرفًا.liveStreams.update
: لا يحتوي المورد على قيمة للسمةsnippet.title
أو لا يضبطها.
-
تم تعديل مستندات مرجع
liveStream
لتوضيح أنّ البث المتعدد وWebM هما طريقتان غير متوافقتَين لنقل البيانات كما هو موضّح سابقًا. تم تعديل قائمة تنسيقات السمةcdn.format
وفقًا لذلك، وتمّت إزالة العنصرcdn.multicastIngestionInfo
وسماته الفرعية من مستندات المرجع. بالإضافة إلى ذلك، تمت إزالةhttp
من قائمة قيمcdn.ingestionType
المسموح بها.