Frame-to-Frame-Messaging verwenden

Auf dieser Seite wird beschrieben, wie Sie clientseitig Nachrichten von einem Add-on, das im iframe der Seitenleiste ausgeführt wird, an ein Add-on senden, das im iframe der Hauptbühne ausgeführt wird. Frame-to-Frame-Messaging erfolgt nur auf der Clientseite, sodass die Nachrichtenübermittlung nahezu augenblicklich erfolgt.

So senden Sie eine Nachricht:

  • Verwenden Sie die Methode notifyMainStage(), um von der Seitenleiste zum Hauptbildschirm zu wechseln.
    await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
  • Verwenden Sie die Methode notifySidePanel(), um von der Hauptbühne zur Seitenleiste zu wechseln.
    await mainStageClient.notifySidePanel("YOUR_MESSAGE");

Die Länge von payload muss der angegebenen Größe entsprechen.

Damit das Add-on die Nachricht erhält, muss es den frameToFrameMessage-Callback abonnieren. Im folgenden Codebeispiel wird gezeigt, wie du einen frameToFrameMessage-Callback abonnierst:

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

Das Beispiel-Add-on „Animation“ auf GitHub enthält ein vollständiges Beispiel für Frame-to-Frame-Messaging. Nach dem Start der Aktivität informiert der Seitenbereich die Hauptbühne, wenn der Nutzer eine Eingabe ändert. Die Hauptschleife meldet sich auch für den frameToFrameMessage-Callback an, um den aktualisierten Status zu erhalten.

Hinweise

  • Frame-to-Frame-Nachrichten, die von einem Teilnehmer gesendet werden, sind nur für diesen Teilnehmer sichtbar. Wenn Sie Nachrichten oder Status an andere Teilnehmer senden möchten, erfahren Sie hier, wie Sie den Add-on-Status teilen.

  • Die Zustellung der Nachricht wird nur einmal versucht. Damit Nachrichten empfangen werden können, muss das Empfangspanel geöffnet sein und die App muss den Rückruf abonnieren, bevor die Nachricht gesendet wird.