تدير واجهة برمجة التطبيقات Google Meet Live Share Co-Watching API تجربة الاجتماع لعدّة مشاركين يشاهدون المحتوى أو يستمعون إليه في تطبيقك.
يشرح هذا الدليل كيفية استخدام واجهة برمجة التطبيقات Co-Watching API.
إنشاء CoWatchingClient
للبدء، أنشئ
createCoWatchingClient
من AddonSession
الذي أنشأته في البدء.
لإنشاء CoWatchingCient
، يمكنك استدعاء الطريقة
AddonSession.createCoWatchingClient
وتقديم
CoWatchingDelegate
.
تشير السمة CoWatchingDelegate
إلى الطريقة التي تحدّث بها واجهة برمجة التطبيقات Co-Watching API تطبيقك عند توفّر حالة جديدة فيه. من المتوقّع أن يطبّق تطبيقك الحالة الجديدة على الفور عند استدعاء الطريقة
CoWatchingDelegate.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
الذي أنشأته أعلاه مع الحصول على مواضع تشغيل
محدَّثة في هذه الظروف.
يمكنك التحكّم في حالة المشاهدة مع الآخرين بالطُرق التالية:
CoWatchingClient.notifySwitchToMedia
: يمكنك الاتصال عند تغيّر الوسائط النشطة. على سبيل المثال، يختار المستخدم فيديو جديدًا أو تبدأ التشغيل التلقائي للفيديو التالي.CoWatchingClient.notifyPauseState
: إجراء مكالمة عندما يوقف المستخدم الوسائط التي يتم تشغيلها مؤقتًا أو يلغي إيقافها مؤقتًاCoWatchingClient.notifySeekToTimestamp
: إجراء مكالمة عندما يغيّر المستخدم موضع التشغيل صراحةًCoWatchingClient.notifyPlayoutRate
: يتمّ الاتصال عندما يعدِّل المستخدم سرعة التشغيل إلى قيمة جديدة (مثلاً 1.25x).CoWatchingClient.notifyBuffering
: إجراء مكالمة عندما يبدأ تطبيق المستخدم في التخزين المؤقت بسبب التخزين المؤقت من مفتاح تبديل سابق للوسائط أو البحث عن الوسائط أو ازدحام الشبكةCoWatchingClient.notifyReady
: يمكنك الاتصال عند اكتمال التخزين المؤقت وتكون الوسائط جاهزة الآن للتشغيل.