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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

מגבלות