הטמעת ממשק ה-API לצפייה משותפת

ה-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, צריך לבצע קריאה ל-method‏ createCoWatchingClient() ולספק אובייקט CoWatchingDelegate.

בעזרת CoWatchingDelegate, ממשק ה-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(): קריאה בכל פעם שהמדיה שמופעלת משתנה. לדוגמה, המשתמש בוחר סרטון חדש, או שההפעלה האוטומטית מפעילה את הסרטון הבא.