Co-Watching API تجربه جلسه چندین شرکت کننده را که محتوای برنامه شما را تماشا یا گوش می دهند مدیریت می کند.
این راهنما نحوه پیاده سازی Co-Watching API را توضیح می دهد.
شروع کنید
برای استفاده از Co-Watching API، ابتدا باید افزونه Meet را مستقر کنید . پس از تکمیل این مراحل، میتوانید از API Co-Watching از داخل افزونه جدید خود استفاده کنید.
برای استفاده از 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 کنید.
وضعیت فعلی را مدیریت کنید
هنگامی که کاربران در برنامه شما اقدامی انجام می دهند، انتظار می رود که برنامه شما بلافاصله متدهای API ارائه شده را فراخوانی کند.
شما فقط باید این روش ها را در پاسخ به رویدادهای مهم فراخوانی کنید. به عنوان مثال، لازم نیست هر بار که برنامه شما یک ویدیو در حال پخش را پیش می برد، با آنها تماس بگیرید. CoWatchingDelegate
که ایجاد میکنید، در این شرایط موقعیتهای پخش بازی را بهروزرسانی میکند.
با استفاده از این روش ها می توانید وضعیت تماشای مشترک را کنترل کنید:
notifyBuffering()
: هنگامی که برنامه کاربر به دلیل بافر شدن از سوییچ رسانه قبلی، جستجوی رسانه یا تراکم شبکه شروع به بافر می کند، تماس می گیرد.notifyPauseState()
: تماس زمانی که کاربر رسانه در حال پخش را متوقف یا لغو مکث کند.notifyPlayoutRate()
: زمانی که کاربر سرعت پخش را به یک مقدار جدید (مثلاً 1.25x) به روز می کند، تماس می گیرد.notifyReady()
: وقتی بافر کامل شد و رسانه اکنون برای پخش آماده است، تماس بگیرید.notifySeekToTimestamp()
: تماس زمانی که کاربر به صراحت موقعیت پخش را تغییر می دهد.notifySwitchToMedia()
: هر زمان که رسانه در حال پخش فعال تغییر کرد، تماس بگیرید. به عنوان مثال، کاربر یک ویدیوی جدید را انتخاب می کند، یا پخش خودکار ویدیوی بعدی را شروع می کند.