Esta página descreve como enviar mensagens no lado do cliente de um complemento executado no iframe do painel lateral para um complemento executado no iframe do estágio principal. A mensagem de frame para frame ocorre apenas no lado do cliente, portanto, a entrega de mensagens é quase instantânea.
Para enviar uma mensagem, siga estas etapas:
- Do painel lateral para o estágio principal, use o
método
notifyMainStage()
.
await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
- Do cenário principal ao painel lateral, use o
método
notifySidePanel()
.
await mainStageClient.notifySidePanel("YOUR_MESSAGE");
O comprimento do payload
precisa estar de acordo com o limite de tamanho especificado.
Para receber a mensagem, o complemento precisa se inscrever no
callback
frameToFrameMessage
. O exemplo de código a seguir mostra como se inscrever em um
callback frameToFrameMessage
:
sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
// YOUR_CODE
});
O complemento de exemplo"Animation" no GitHub
inclui um exemplo completo de mensagens de frame a frame. Depois que a atividade é iniciada,
o painel lateral notifica o estágio principal sempre que o usuário muda uma entrada.
A etapa principal também se inscreve no callback frameToFrameMessage
para receber o estado atualizado.
Observações
As mensagens frame-to-frame enviadas por um determinado participante só são visíveis por esse mesmo participante. Para enviar mensagens ou estados a outros participantes, saiba como compartilhar o estado do complemento.
A entrega da mensagem é tentada apenas uma vez. Para receber mensagens, o painel de recebimento precisa estar aberto, e o app precisa se inscrever no callback antes que a mensagem seja enviada.