تدير واجهة برمجة التطبيقات 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()
: يمكنك الاتصال عند تغيّر الوسائط النشطة. على سبيل المثال، يختار المستخدم فيديو جديدًا، أو يبدأ التشغيل التلقائي الفيديو التالي.