En esta página, se describe cómo enviar mensajes del lado del cliente desde un complemento que se ejecuta en el iframe del panel lateral a un complemento que se ejecuta en el iframe de la etapa principal. Los mensajes de marco a marco solo se producen en el cliente, por lo que la entrega de mensajes es casi instantánea.
Para enviar un mensaje, sigue estos pasos:
- Para pasar del panel lateral al escenario principal, usa el método
notifyMainStage().
await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
- Desde el escenario principal hasta el panel lateral, usa el método
notifySidePanel().
await mainStageClient.notifySidePanel("YOUR_MESSAGE");
La longitud de payload
debe cumplir con el límite de tamaño especificado.
Para recibir el mensaje, el complemento debe suscribirse a la devolución de llamada frameToFrameMessage. En la siguiente muestra de código, se indica cómo suscribirse a una devolución de llamada de frameToFrameMessage:
sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
// YOUR_CODE
});
El complemento de ejemplo "Animation" en GitHub incluye un ejemplo completo de mensajería de fotograma a fotograma. 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 fotograma a fotograma que envía un participante determinado solo son visibles para ese mismo participante. Para enviar mensajes o estados a otros participantes, consulta cómo 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.