ה-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 מעדכן את האפליקציה בכל פעם שיש מצב חדש זמין. כשקוראים ל-method onCoWatchingStateChanged(), האפליקציה אמורה להחיל את המצב החדש באופן מיידי.
בדוגמת הקוד הבאה אפשר לראות איך משתמשים ב-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 שצוינו.
צריך להפעיל את ה-methods האלה רק בתגובה לאירועים משמעותיים. לדוגמה, לא צריך להתקשר אליהם בכל פעם שהאפליקציה מעבירה סרטון שמופעל. ה-CoWatchingDelegate שאתם יוצרים מטפל בעדכון של מיקומי ההפעלה בנסיבות האלה.
אפשר לשלוט במצב הצפייה המשותפת באמצעות השיטות הבאות:
notifyBuffering(): קריאה כשמתחיל חיץ (באפרינג) באפליקציה של משתמש בגלל באפרינג מהחלפה קודמת של מדיה, חיפוש מדיה או עומס ברשת.
notifyPauseState(): התקשרות כשמשתמש משהה או מבטל את ההשהיה של הפעלת המדיה.
notifyPlayoutRate(): הפונקציה מופעלת כשמשתמש מעדכן את מהירות ההפעלה לערך חדש (לדוגמה, 1.25x).
notifyReady(): התקשרות כשהחציצה מסתיימת והמדיה מוכנה להפעלה.
notifySeekToTimestamp(): הפונקציה מופעלת כשמשתמש משנה באופן מפורש את מיקום ההפעלה.
notifySwitchToMedia(): הפעלת שיחה בכל פעם שהמדיה שמופעלת באופן פעיל משתנה. לדוגמה, המשתמש בוחר סרטון חדש או שההפעלה האוטומטית מתחילה את הסרטון הבא.