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

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

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

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

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

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

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

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

הערות

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

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