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

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

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

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

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

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

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

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

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

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

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

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

אילוצים