Cette page explique comment envoyer des messages côté client depuis un module complémentaire exécuté dans l' iframe du panneau latéral vers un module complémentaire exécuté dans l'iframe de la scène principale. La messagerie entre frames ne se produit que côté client. La diffusion des messages est donc quasi instantanée.
Pour envoyer un message, procédez comme suit :
- Du panneau latéral à la scène principale, utilisez la
notifyMainStage()méthode.
await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
- De la scène principale au panneau latéral, utilisez la
notifySidePanel()méthode.
await mainStageClient.notifySidePanel("YOUR_MESSAGE");
La payload
longueur doit respecter la limite de taille spécifiée.
Pour recevoir le message, le module complémentaire doit s'abonner à
la
frameToFrameMessage
fonction de rappel. L'exemple de code suivant montre comment s'abonner à un rappel frameToFrameMessage :
sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
// YOUR_CODE
});
L'exemple de module complémentaire "Animation" sur GitHub
inclut un exemple complet de messagerie entre frames. Une fois l'activité démarrée,
le panneau latéral informe la scène principale chaque fois que l'utilisateur modifie une entrée.
La scène principale s'abonne également au rappel subscribes to the frameToFrameMessage callback
pour recevoir l'état mis à jour.
Remarques
Les messages entre frames envoyés par un participant donné ne sont visibles que par ce même participant. Pour envoyer des messages ou un état à d'autres participants, découvrez comment partager l'état d'un module complémentaire state.
La diffusion des messages n'est tentée qu'une seule fois. Pour recevoir des messages, le panneau de réception doit être ouvert et l'application doit s'abonner au rappel avant l'envoi du message.