Korzystanie z funkcji przesyłania wiadomości między ramkami

Na tej stronie wyjaśniamy, jak wysyłać wiadomości po stronie klienta z poziomu dodatku działającego w elemencie iframe panelu bocznego do dodatku działającego w elemencie iframe głównej sceny. Komunikacja międzyklatkowa odbywa się tylko po stronie klienta, więc dostarczanie wiadomości jest niemal natychmiastowe.

Aby wysłać wiadomość:

  • Aby przełączyć się z panelu bocznego do głównego widoku, użyj metody notifyMainStage().
    await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
  • Aby przełączyć się z ekranu głównego na panel boczny, użyj metody notifySidePanel().
    await mainStageClient.notifySidePanel("YOUR_MESSAGE");

Długość payload musi być zgodna z określonym limitem rozmiaru.

Aby otrzymywać te wiadomości, dodatek musi subskrybować wywołanie frameToFrameMessage. Poniższy przykładowy kod pokazuje, jak subskrybować wywołanie zwrotne frameToFrameMessage:

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

Przykładowy dodatek „Animation” na GitHubie zawiera pełny przykład przesyłania wiadomości z ramki na ramkę. Po rozpoczęciu aktywności panel boczny powiadamia główną scenę o każdej zmianie wprowadzonej przez użytkownika. Etap główny subskrybuje również wywołanie zwrotne frameToFrameMessage, aby otrzymywać zaktualizowany stan.

Uwagi

  • Wiadomości wysyłane przez danego uczestnika w trybie klatki po klatce są widoczne tylko dla tego uczestnika. Aby wysyłać wiadomości lub stan do innych uczestników, dowiedz się, jak udostępniać stan.

  • Próba dostarczenia wiadomości jest podejmowana tylko raz. Aby otrzymywać wiadomości, panel odbiorczy musi być otwarty, a aplikacja musi zasubskrybować wywołanie zwrotne przed wysłaniem wiadomości.