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

ה-API לצפייה משותפת מנהל את חוויית הפגישה של מספר אנשים משתתפים שצופים בתוכן באפליקציה או מאזינים לו.

במדריך הזה מוסבר איך להטמיע את ה-API של צפייה משותפת.

שנתחיל?

כדי להשתמש ב-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.

בעזרת 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 בכותרת המדיה של הפעילות.

ניהול המצב הנוכחי

כשמשתמשים מבצעים פעולה באפליקציה, האפליקציה צפויה קוראת מיד ל-methods של ה-API.

כדאי להפעיל את השיטות האלה רק בתגובה לאירועים משמעותיים. עבור למשל, אין צורך לקרוא להם בכל פעם שהאפליקציה מקדמת וידאו. הכינויים של CoWatchingDelegate שיוצרים מקבלים עדכון למהלך המשחק במיקומים האלה.

אתם יכולים לשלוט במצב הצפייה המשותפת בשיטות הבאות:

  • notifyBuffering(): קריאה שמתבצעת כשהאפליקציה של המשתמש מתחילה לאגור נתונים במטמון בגלל אגירת נתונים במטמון כתוצאה מהחלפה קודמת של מדיה, חיפוש מדיה או עומס ברשת.

  • notifyPauseState(): הקריאה מופעלת כשמשתמש משהה את המדיה המופעלת או מבטל את ההשהיה שלה.

  • notifyPlayoutRate(): קוראים לפונקציה כשמשתמש מעדכן את מהירות ההפעלה לערך חדש (לדוגמה, 1.25x).

  • notifyReady(): השיחה תסתיים כשתהליך אגירת הנתונים יסתיים והתוכן מוכן להפעלה.

  • notifySeekToTimestamp(): צריך להפעיל את השיטה הזו כשמשתמש משנה במפורש את מיקום ההפעלה.

  • notifySwitchToMedia(): קוראים בכל פעם שמדיה שמופעלת כרגע משתנה. לדוגמה, המשתמש בחר סרטון חדש או שההפעלה האוטומטית השיקה את הסרטון הבא.