프레임 간 메시지 사용

이 페이지에서는 클라이언트 측에서 측면 패널 iframe에서 실행되는 부가기능에서 기본 스테이지 iframe에서 실행되는 부가기능으로 메시지를 전송하는 방법을 설명합니다. 프레임 간 메시징은 클라이언트 측에서만 발생하므로 메시지 전송은 거의 즉시 이루어집니다.

메시지를 보내는 방법은 다음과 같습니다.

  • 측면 패널에서 기본 스테이지까지 notifyMainStage() 메서드를 사용합니다.
    await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
  • 기본 스테이지에서 측면 패널까지 notifySidePanel() 메서드를 사용합니다.
    await mainStageClient.notifySidePanel("YOUR_MESSAGE");

payload 길이는 지정된 크기 제한을 준수해야 합니다.

메시지를 수신하려면 부가기능에서 frameToFrameMessage 콜백을 구독해야 합니다. 다음 코드 샘플은 frameToFrameMessage 콜백을 구독하는 방법을 보여줍니다.

sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
    // YOUR_CODE
});

GitHub의 '애니메이션' 샘플 부가기능에는 프레임 간 메시지의 전체 예가 포함되어 있습니다. 활동이 시작되면 측면 패널은 사용자가 입력을 변경할 때마다 기본 스테이지에 알립니다. 또한 기본 스테이지는 frameToFrameMessage 콜백을 구독하여 업데이트된 상태를 수신합니다.

참고

  • 특정 참여자가 보낸 프레임 간 메시지는 동일한 참여자 볼 수 있습니다. 다른 참여자에게 메시지 또는 상태를 보내려면 부가기능 상태를 공유하는 방법을 알아보세요.

  • 메시지 전송은 한 번만 시도됩니다. 메시지를 수신하려면 수신 패널이 열려 있어야 하며 메시지가 전송되기 전에 앱이 콜백을 구독해야 합니다.