שימוש בהעברת הודעות מהפריים למסגרת

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

כדי לשלוח הודעה:

  • כדי להעביר את המשתתפים מהחלונית הצדדית לשידור הראשי, משתמשים בשיטה notifyMainStage().
    await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
  • כדי להעביר מהשידור הראשי לחלונית הצדדית, משתמשים בשיטה notifySidePanel().
    await mainStageClient.notifySidePanel("YOUR_MESSAGE");

האורך של payload חייב להיות בהתאם למגבלת הגודל שצוינה.

כדי לקבל את ההודעה, התוסף צריך להירשם לקריאה חוזרת (callback) של frameToFrameMessage. דוגמת הקוד הבאה מראה איך להירשם לקריאה חוזרת (callback) של frameToFrameMessage:

sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
    // YOUR_CODE
});

התוסף לדוגמה 'אנימציה' ב-GitHub כולל דוגמה מלאה להעברת הודעות בין פריים לפריים. אחרי שהפעילות מתחילה, החלונית הצדדית שולחת הודעה לבמה הראשית בכל פעם שהמשתמש משנה קלט. הבמה הראשית גם נרשמת לקריאה חוזרת (callback) של frameToFrameMessage כדי לקבל עדכונים על הסטטוס.

הערות

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

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