שיתוף פעולה באמצעות תוסף ל-Meet

המשתתפים בפגישה יכולים לעבוד יחד בפעילות בתוסף של Google Meet. כשמתחילה פעילות משותפת, כל המשתתפים בפגישה מקבלים התראה על כך שהפעילות מתבצעת.

ההתראה הזו מותאמת לזמינות ולסטטוס ההתקנה של התוסף:

  • אם התוסף מותקן אצל המשתתף: הוא יוכל להצטרף לפעילות.

  • אם התוסף לא מותקן אצל המשתתף: הוא יתבקש להתקין את התוסף.

  • אם התוסף לא זמין בפלטפורמה של המשתתף: הוא יקבל הודעה על כך שהוא לא יכול להצטרף לפעילות באמצעות המכשיר הנוכחי שלו.

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

התחלת הפעילות

כדי להפעיל פעילות, צריך להפעיל את השיטה startActivity() שמשתמשת בממשק ActivityStartingState.

שלב 1 (אופציונלי): התוסף מגדיר את מצב ההתחלה של הפעילות

השדה ActivityStartingState מכיל מידע על המצב הראשוני של התוסף, שמשומש כשהמשתתף מקבל את ההזמנה להצטרף לפעילות.

התוסף יכול להגדיר או לעדכן את ActivityStartingState על ידי קריאה ל-method‏ setActivityStartingState() בכל שלב לפני הפעילות או במהלכה. אפשר להשמיט קריאות ל-setActivityStartingState() אם הערך של ActivityStartingState מוגדר באופן בלעדי בקריאה ל-startActivity().

שלב 2: התוסף מתחיל את הפעילות

הפעילות מתחילה כשהתוסף קורא לשיטה startActivity() ב-MeetSidePanelClient. ה-method ‏startActivity() מקבל אובייקט ActivityStartingState כפרמטר, כך שאפשר לקרוא ל-startActivity() במקום לקרוא ל-setActivityStartingState().

אחרי שהמשתמש משלים את בחירת התוכן ומתכונן להתחיל פעילות, צריך להפעיל את השיטה startActivity() בתוסף באופן הבא:

    sidePanelClient.startActivity({
        mainStageUrl: "https://app.example.com/mainstage",
        additionalData: JSON.stringify({
            // State to send to participants.
        })
    });

כשמפעילים את השיטה startActivity(), המערכת ב-Meet מבצעת את הפעולות הבאות:

  • למשתתפים אחרים: ב-Meet תוצג הודעה על כך שהפעילות נמשכת.

  • למי שיצר את הפגישה: אם צוינה כתובת URL של הבמה הראשית ב-ActivityStartingState, מערכת Meet תפתח את הבמה הראשית באמצעות כתובת ה-URL מ-ActivityStartingState.

שלב 3: אחזור המצב ההתחלתי של הפעילות

כשמשתמש מצטרף לפעילות, הוא טוען את התוסף שלכם לזירת הפעילות הראשית או לחלונית הצדדית, בהתאם ל-ActivityStartingState.

בעזרת המאפיין additionalData אפשר לשתף נתונים ראשוניים (שנקראים גם מצב) עם משתמשים שמצטרפים לפעילות. אחרי שמאתחלים את MainStageClient או את SidePanelClient, אפשר להפעיל את השיטה getActivityStartingState() כדי לאחזר את המאפיין additionalData.

const startingState = client.getActivityStartingState();
const additionalData = JSON.parse(startingState.additionalData);

שלב 4 (אופציונלי): שיתוף המצב של התוסף בפעילות

אפשר גם לשתף את המצב בין משתמשים בזמן שהפעילות מתבצעת. יש שתי דרכים לשתף מצב:

  • לטפל בזה בעצמכם על ידי יצירת קצה עורפי משלכם לסנכרון.
  • להשתמש ב-Co-Doing API, שהוא דרך נוחה ומהירה לשיתוף נתונים שרירותיים בין משתמשים.

דוגמה: תוסף אנימציה ב-GitHub

התוסף לדוגמה 'אנימציה' ב-GitHub כולל שיתוף פעולה בתוסף. שלב 1 מהמדריך הזה לא נכלל בדוגמה. במקום זאת, כשמפעיל התוסף לוחץ על הלחצן 'הפעלת האנימציה' בחלונית הצדדית, מתבצעת קריאה ל-method‏ startActivity() (שלב 2) על ידי אכלוס המצב ההתחלתי בצבע שבחר המשתמש. אחרי שהפעילות מתחילה, השלב הראשי מאחזר את מצב ההתחלה על ידי קריאה ל-method‏ getActivityStartingState() (שלב 3). שלב 4 לא מופיע, כי המצב (הצבע שנבחר) לא משותף בין המשתתפים במהלך הפעילות בתוסף לדוגמה הזה. עם זאת, משתמשים ספציפיים יכולים לשנות את הסטטוס שלהם על ידי בחירת צבע, שיישלח מהמסגרת של החלונית הצדדית למסגרת של הבמה הראשית באמצעות הודעות ממסגרת למסגרת.

אילוצים