このページでは、サイドパネル iframe で実行されているアドオンから、メインステージ iframe で実行されているアドオンにクライアントサイドでメッセージを送信する方法について説明します。フレーム間のメッセージングはクライアント側でのみ行われるため、メッセージはほぼ瞬時に配信されます。
メールを送信するには:
- サイドパネルからメインステージに移動するには、
notifyMainStage()メソッドを使用します。
await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
- メインステージからサイドパネルに移動するには、
notifySidePanel()メソッドを使用します。
await mainStageClient.notifySidePanel("YOUR_MESSAGE");
payload の長さは、指定されたサイズ制限に準拠している必要があります。
メッセージを受信するには、アドオンが frameToFrameMessage コールバックに登録する必要があります。次のコードサンプルは、frameToFrameMessage コールバックに登録する方法を示しています。
sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
// YOUR_CODE
});
GitHub の「Animation」サンプル アドオンには、フレーム間メッセージングの完全な例が含まれています。アクティビティが開始されると、サイドパネルはユーザーが入力内容を変更するたびにメインステージに通知します。メインステージは、更新された状態を受け取るために frameToFrameMessage コールバックに登録します。
メモ
特定の参加者が送信したフレーム間メッセージは、その参加者にのみ表示されます。他の参加者にメッセージや状態を送信するには、アドオンの状態を共有する方法をご覧ください。
メッセージの配信は 1 回のみ試行されます。メッセージを受信するには、受信パネルが開いていて、メッセージが送信される前にアプリがコールバックに登録されている必要があります。