تطبيق واجهة برمجة التطبيقات الخاصة بميزة "مشاهدة المحتوى مع الآخرين"

تدير واجهة برمجة التطبيقات 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: يمكنك الاتصال عند اكتمال التخزين المؤقت وتكون الوسائط جاهزة الآن للتشغيل.