En esta página, se describe cómo enviar mensajes en el cliente desde un complemento que se ejecuta en el iframe del panel lateral a un complemento que se ejecuta en el iframe del escenario principal. La mensajería de frame a frame solo se produce en el cliente, por lo que la entrega de mensajes es casi instantánea.
Para enviar un mensaje, sigue estos pasos:
- Desde el panel lateral hasta el escenario principal, usa el
notifyMainStage()método.
await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
- Desde el escenario principal hasta el panel lateral, usa el
notifySidePanel()método.
await mainStageClient.notifySidePanel("YOUR_MESSAGE");
La payload
longitud debe cumplir con el límite de tamaño especificado.
Para recibir el mensaje, el complemento debe suscribirse a
la
frameToFrameMessage
devolución de llamada. En la siguiente muestra de código, se muestra cómo suscribirse a una devolución de llamada frameToFrameMessage:
sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
// YOUR_CODE
});
El complemento de muestra "Animation" en GitHub
incluye un ejemplo completo de mensajería de frame a frame. Después de que se inicia la actividad,
el panel lateral notifica al escenario principal cada vez que el usuario cambia una entrada.
El escenario principal también se suscribe a la devolución de llamada frameToFrameMessage
para recibir el estado actualizado.
Notas
Los mensajes de frame a frame que envía un participante determinado solo son visibles para ese mismo participante. Para enviar mensajes o estados a otros participantes, obtén información para compartir el estado del complemento.
La entrega de mensajes solo se intenta una vez. Para recibir mensajes, el panel receptor debe estar abierto y la app debe suscribirse a la devolución de llamada antes de que se envíe el mensaje.