ใช้การรับส่งข้อความเฟรมต่อเฟรม

หน้านี้จะอธิบายวิธีส่งข้อความฝั่งไคลเอ็นต์จากส่วนเสริมที่ทำงานใน iframe ของแผงด้านข้างไปยังส่วนเสริมที่ทำงานใน iframe ของเวทีหลัก การรับส่งข้อความแบบเฟรมต่อเฟรมจะเกิดขึ้นเฉพาะฝั่งไคลเอ็นต์เท่านั้น การนำส่งข้อความจึงเกือบจะทันที

วิธีการส่งข้อความ

  • จากแผงด้านข้างไปยังเวทีหลัก ให้ใช้วิธี notifyMainStage()
    await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
  • จากเวทีหลักไปยังแผงด้านข้าง ให้ใช้วิธี notifySidePanel()
    await mainStageClient.notifySidePanel("YOUR_MESSAGE");

ความยาวของ payload ต้องเป็นไปตามขีดจำกัดขนาดที่ระบุ

หากต้องการรับข้อความ ส่วนเสริมต้องติดตามการเรียกกลับframeToFrameMessage ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสมัครรับข้อมูล callback ของ frameToFrameMessage

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

ตัวอย่างส่วนเสริม"ภาพเคลื่อนไหว" ใน GitHub มีตัวอย่างการรับส่งข้อความแบบเฟรมต่อเฟรมอย่างสมบูรณ์ หลังจากกิจกรรมเริ่มต้นขึ้น แผงด้านข้างจะแจ้งให้เวทีหลักทราบทุกครั้งที่ผู้ใช้เปลี่ยนอินพุต นอกจากนี้ สเตจหลักยังสมัครรับการเรียกกลับ frameToFrameMessage เพื่อรับสถานะที่อัปเดต

หมายเหตุ

  • ข้อความแบบเฟรมต่อเฟรมที่ผู้เข้าร่วมรายหนึ่งส่งจะมองเห็นได้โดยผู้เข้าร่วมรายนั้นเท่านั้น หากต้องการส่งข้อความหรือสถานะให้ผู้เข้าร่วมคนอื่นๆ ทราบ ให้ดูวิธีแชร์สถานะของส่วนเสริม

  • ระบบจะพยายามนำส่งข้อความเพียงครั้งเดียวเท่านั้น หากต้องการรับข้อความ แผงรับต้องเปิดอยู่และแอปต้องสมัครรับการเรียกกลับก่อนที่จะส่งข้อความ