Frame-to-Frame-Messaging verwenden
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Auf dieser Seite wird beschrieben, wie Sie clientseitig Nachrichten von einem Add-on, das im Seitenleisten-iFrame ausgeführt wird, an ein Add-on senden, das im Hauptbühnen-iFrame ausgeführt wird. Die Frame-to-Frame-Kommunikation findet nur auf der Clientseite statt, sodass Nachrichten nahezu sofort zugestellt werden.
So senden Sie eine Nachricht:
- Verwenden Sie die Methode
notifyMainStage()
, um ein Element von der Seitenleiste auf den Hauptbildschirm zu verschieben.
await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
- Verwenden Sie die Methode
notifySidePanel()
, um Inhalte von der Hauptbühne in die Seitenleiste zu verschieben.
await mainStageClient.notifySidePanel("YOUR_MESSAGE");
Die Länge von payload
muss dem angegebenen Größenlimit entsprechen.
Damit das Add-on die Nachricht empfangen kann, muss es den Callback frameToFrameMessage
abonnieren. Das folgende Codebeispiel zeigt, wie Sie einen frameToFrameMessage
-Callback abonnieren:
sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
// YOUR_CODE
});
Das Beispiel-Add-on „Animation“ auf GitHub enthält ein vollständiges Beispiel für die Frame-zu-Frame-Kommunikation. Nachdem die Aktivität gestartet wurde, benachrichtigt die Seitenleiste die Hauptbühne, wenn der Nutzer eine Eingabe ändert.
Die Hauptbühne abonniert auch den frameToFrameMessage
-Callback, um den aktualisierten Status zu erhalten.
Hinweise
Frame-to-Frame-Nachrichten, die von einem bestimmten Teilnehmer gesendet werden, sind nur für diesen Teilnehmer sichtbar. Informationen zum Senden von Nachrichten oder Status an andere Teilnehmer finden Sie hier.
Die Zustellung der Nachricht wird nur einmal versucht. Damit Nachrichten empfangen werden können, muss das empfangende Feld geöffnet sein und die App muss den Callback abonnieren, bevor die Nachricht gesendet wird.
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-08-29 (UTC).
[null,null,["Zuletzt aktualisiert: 2025-08-29 (UTC)."],[],[],null,["# Use frame-to-frame messaging\n\nThis page describes how to send messages on the client side from an\nadd-on running in the\n[side-panel](/workspace/meet/add-ons/guides/overview#side-panel) iframe to an\nadd-on running in the [main\nstage](/workspace/meet/add-ons/guides/overview#main-stage) iframe. Frame-to-frame\nmessaging only occurs on the client side, so message delivery is near\ninstantaneous.\n\nTo send a message:\n\n- From the side panel to the main stage, use the [`notifyMainStage()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetsidepanelclient.notifymainstage) method.\n\n await sidePanelClient.notifyMainStage(\"\u003cvar translate=\"no\"\u003eYOUR_MESSAGE\u003c/var\u003e\");\n\n- From the main stage to the side panel, use the [`notifySidePanel()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetmainstageclient.notifysidepanel) method.\n\n await mainStageClient.notifySidePanel(\"\u003cvar translate=\"no\"\u003eYOUR_MESSAGE\u003c/var\u003e\");\n\nThe [`payload`](/workspace/meet/add-ons/reference/websdk/addon_sdk.frametoframemessage.payload)\nlength must conform to its specified size limit.\n\nTo receive the message, the add-on must subscribe to\nthe\n[`frameToFrameMessage`](/workspace/meet/add-ons/reference/websdk/addon_sdk.addoncallbacks.frametoframemessage)\ncallback. The following code sample shows how to subscribe to a\n`frameToFrameMessage` callback: \n\n sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) =\u003e {\n // YOUR_CODE\n });\n\nThe [\"Animation\" sample add-on on GitHub](https://github.com/googleworkspace/meet/tree/3311b735550b8927c8b7ef2c6d06f768d9fe0476/addons-web-sdk/samples/animation-next-js)\nincludes a full example of frame-to-frame messaging. After the activity starts,\nthe side panel [notifies the main stage whenever the user changes an input](https://github.com/googleworkspace/meet/blob/3311b735550b8927c8b7ef2c6d06f768d9fe0476/addons-web-sdk/samples/animation-next-js/src/app/activitysidepanel/page.tsx#L27).\nThe main stage also [subscribes to the `frameToFrameMessage` callback](https://github.com/googleworkspace/meet/blob/3311b735550b8927c8b7ef2c6d06f768d9fe0476/addons-web-sdk/samples/animation-next-js/src/app/mainstage/page.tsx#L43)\nto receive updated state.\n\nNotes\n-----\n\n- Frame-to-frame messages sent by a given participant are *only* visible by\n that same participant. To send messages or state to other participants,\n learn how to [share add-on\n state](/workspace/meet/add-ons/guides/collaborate-in-the-add-on#collaboration).\n\n- Message delivery is only attempted once. To receive messages, the receiving\n panel must be open and the app must subscribe to the callback before the\n message is sent.\n\nRelated topics\n--------------\n\n- [Implement the Co-Doing API](/workspace/meet/add-ons/guides/use-CoDoingAPI)"]]