ה-API של צפייה משותפת מנהל את חוויית הפגישה של כמה משתתפים שצופים בתוכן באפליקציה שלכם או מאזינים לו.
במדריך הזה מוסבר איך מטמיעים את Co-Watching API.
שנתחיל?
כדי להשתמש ב-Co-Watching API, קודם צריך לפרוס תוסף ל-Meet. אחרי שתסיימו את השלבים האלה, תוכלו להתחיל להשתמש ב-API של הצפייה המשותפת מתוך התוסף החדש.
כדי להשתמש ב-API של הצפייה המשותפת, צריך להתחיל בקבלת אובייקט AddonSession
, שמשמש כנקודת הכניסה לפעילויות משותפות ב-Google Meet:
TypeScript
const session = await window.meet.addon.createAddonSession({
cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
});
מחליפים את CLOUD_PROJECT_NUMBER במספר הפרויקט ב-Google Cloud.
יצירת לקוח לצפייה משותפת
כדי להתחיל, יוצרים אובייקט CoWatchingClient
מ-AddonSession
.
כדי ליצור CoWatchingCient
, צריך לבצע קריאה ל-method createCoWatchingClient()
ולספק אובייקט CoWatchingDelegate
.
ממשק ה-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 בכותרת המדיה של הפעילות.
ניהול המצב הנוכחי
כשמשתמשים מבצעים פעולה באפליקציה, האפליקציה אמורה להפעיל באופן מיידי את שיטות ה-API שצוינו.
צריך להפעיל את השיטות האלה רק בתגובה לאירועים משמעותיים. לדוגמה, לא צריך לקרוא להן בכל פעם שהאפליקציה מקדמת סרטון שמופעל. הCoWatchingDelegate
שאתם יוצרים מטפל בעדכון של מיקומי ההפעלה בנסיבות האלה.
אפשר לשלוט במצב הצפייה המשותפת באמצעות השיטות הבאות:
notifyBuffering()
: התקשרות כשמתחילה שמירת נתונים במאגר זמני באפליקציה של משתמש בגלל שמירת נתונים במאגר זמני ממעבר מדיה קודם, חיפוש מדיה או עומס ברשת.
notifyPauseState()
: התקשרות כשמשתמש משהה או מבטל את ההשהיה של הפעלת המדיה.
notifyPlayoutRate()
: הפונקציה מופעלת כשמשתמש מעדכן את מהירות ההפעלה לערך חדש (לדוגמה, 1.25x).
notifyReady()
: התקשר כשהמאגר מוכן והמדיה מוכנה להפעלה.
notifySeekToTimestamp()
: הפונקציה מופעלת כשמשתמש משנה באופן מפורש את מיקום ההפעלה.
notifySwitchToMedia()
: הפונקציה מופעלת בכל פעם שהמדיה שמופעלת כרגע משתנה. לדוגמה, המשתמש בוחר סרטון חדש או שההפעלה האוטומטית מתחילה את הסרטון הבא.