تتيح واجهة برمجة التطبيقات Co-Watching API إدارة تجربة الاجتماعات لعدة المشاركين الذين يشاهدون أو يستمعون إلى المحتوى في تطبيقك
يشرح هذا الدليل كيفية استخدام واجهة برمجة التطبيقات Co-Watching API.
البدء
لاستخدام واجهة برمجة التطبيقات Co-Watching API، عليك أولاً نشر إضافة Meet بعد إكمال هذه الخطوات، يمكنك بدء استخدام واجهة برمجة التطبيقات Co-Watching API من داخل الإضافة الجديدة.
لاستخدام Co-Watching API، ابدأ بالحصول على عنصر
AddonSession
،
الذي يشكّل نقطة الدخول إلى الأنشطة المشترَكة في Google Meet:
TypeScript
const session = await window.meet.addon.createAddonSession({
cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
});
استبدال CLOUD_PROJECT_NUMBER برقم المشروع مشروعك على Google Cloud
إنشاء عميل لمشاهدة المحتوى مع الآخرين
للبدء، أنشئ عنصر
CoWatchingClient
من AddonSession
.
لإنشاء CoWatchingCient
، يمكنك طلب
createCoWatchingClient()
طريقة وتوفير
CoWatchingDelegate
الخاص بك.
CoWatchingDelegate
هي الطريقة التي تُحدِّث بها Co-Watching API تطبيقك
عندما تتوفّر حالة جديدة. من المتوقّع أن يطبّق تطبيقك الحالة الجديدة على الفور عند استدعاء الأسلوب
onCoWatchingStateChanged()
.
يوضّح نموذج الرمز البرمجي التالي كيفية استخدام واجهة برمجة التطبيقات Co-Watching API:
TypeScript
const coWatchingClient = await addonSession.createCoWatchingClient({
activityTitle: "ACTIVITY_TITLE",
onCoWatchingStateQuery() {
// This function should return the current state of your CoWatching activity
return getMyApplicationCoWatchingState();
},
onCoWatchingStateChanged(coWatchingState: CoWatchingState) {
// This function should apply newState to your ongoing CoWatching activity
},
});
استبدِل ACTIVITY_TITLE بعنوان الوسائط لنشاطك.
إدارة الحالة الحالية
عندما يتخذ المستخدمون إجراءً في تطبيقك، من المتوقع أن يستخدم تطبيقك على الفور بطرق واجهة برمجة التطبيقات المقدمة.
يجب عدم استدعاء هذه الطرق إلا استجابةً لأحداث مهمة. بالنسبة
على سبيل المثال، لا تحتاج إلى الاتصال بها في كل مرة يتقدم فيها تطبيقك
الفيديو القادم. في هذه الحالات، يتم تعديل مواضع CoWatchingDelegate
التي تنشئها لعرض الإعلانات.
يمكنك التحكّم في حالة المشاهدة المشترَكة باستخدام الطريقتَين التاليتَين:
notifyBuffering()
: يتمّ الاتصال عندما يبدأ تطبيق المستخدم في التخزين المؤقت بسبب التخزين المؤقت من عملية سابقة للتبديل بين الوسائط أو الانتقال إلى محتوى معيّن في الوسائط أو ازدحام الشبكة.
notifyPauseState()
: يتم الاتصال عندما يوقف المستخدم الوسائط مؤقتًا أو يشغّلها من جديد.
notifyPlayoutRate()
: يتم استدعاء هذه الوظيفة عندما يعدّل المستخدم سرعة التشغيل إلى قيمة جديدة (مثل 1.25x).notifyReady()
: يمكنك الاتصال عند اكتمال التخزين المؤقت وتكون الوسائط جاهزة الآن للتشغيل.notifySeekToTimestamp()
: يتم الاتصال عندما يغير المستخدم موضع التشغيل بشكل صريح.notifySwitchToMedia()
: يمكنك الاتصال عند تغيّر الوسائط النشطة. على سبيل المثال، قد يرغب المستخدم فيديو جديدًا، أو تبدأ الفيديو التالي تلقائيًا.