จัดการออบเจ็กต์ไคลเอ็นต์

หน้านี้จะอธิบายวิธีจัดการออบเจ็กต์ไคลเอ็นต์ที่ส่วนเสริมต้องใช้เพื่อสื่อสารกับ Google Meet

ก่อนอื่น ส่วนเสริมจะต้องสร้างเซสชัน โดยทำดังนี้

  const session = await window.meet.addon.createAddonSession({
      cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
    });

แทนที่ CLOUD_PROJECT_NUMBER ด้วยหมายเลขโปรเจ็กต์ Google Cloud

จากเซสชัน สามารถสร้างออบเจ็กต์ไคลเอ็นต์ 2 รายการ ได้แก่

คุณต้องดึงข้อมูลออบเจ็กต์ไคลเอ็นต์ที่ถูกต้องสำหรับเวทีหลักหรือแผงด้านข้าง หากดึงข้อมูลไคลเอ็นต์ที่ไม่ถูกต้อง SDK ของส่วนเสริม Google Meet จะแสดงข้อยกเว้น หากต้องการตรวจสอบว่าส่วนเสริมทํางานอยู่ใน iframe ใด (เวทีหลักหรือแผงด้านข้าง) ให้ใช้วิธี getFrameType()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างอินสแตนซ์ออบเจ็กต์ไคลเอ็นต์ของสเตจหลัก

  const session = await window.meet.addon.createAddonSession({
      cloudProjectNumber: "CLOUD_PROJECT_NUMBER"
    });
  const mainStageClient = await session.createMainStageClient();

แทนที่ CLOUD_PROJECT_NUMBER ด้วยหมายเลขโปรเจ็กต์ของโปรเจ็กต์ใน GCP

ฟีเจอร์ที่แชร์

ฟีเจอร์บางอย่างมีอยู่ในทั้งออบเจ็กต์ MeetMainStageClient และ MeetSidePanelClient ส่วนฟีเจอร์อื่นๆ มีไว้สำหรับไคลเอ็นต์บางประเภทโดยเฉพาะ

ตัวอย่างเช่น ฟีเจอร์บางอย่างที่ใช้ได้ในทั้ง 2 ไคลเอ็นต์ ได้แก่

  • เมธอด getActivityStartingState() ที่รับข้อมูลเกี่ยวกับสถานะเริ่มต้นของส่วนเสริมเมื่อผู้เข้าร่วมยอมรับคำเชิญให้เข้าร่วมกิจกรรม
  • เมธอด getMeetingInfo() ที่รับรายละเอียดเกี่ยวกับการประชุมที่ส่วนเสริมทำงานอยู่
  • วิธีการ setActivityStartingState() ที่กําหนดสถานะเริ่มต้นของส่วนเสริมเมื่อผู้เข้าร่วมยอมรับคําเชิญให้เข้าร่วมกิจกรรม
  • ดูรายการฟีเจอร์ที่ครอบคลุมในทั้ง 2 ไคลเอ็นต์ได้ที่ออบเจ็กต์ MeetAddonClient

ฟีเจอร์เฉพาะไคลเอ็นต์

ฟีเจอร์ที่ใช้ได้เฉพาะใน MeetMainStageClient ออบเจ็กต์

  • เมธอด notifySidePanel() จะส่งข้อความไปยังแผงด้านข้าง คุณรับข้อความได้โดยสมัครรับframeToFrameMessage การเรียกกลับในแผงด้านข้าง

  • วิธีการ loadSidePanel() จะเปิด iframe ของแผงด้านข้าง แหล่งที่มาของ iframe ได้รับการตั้งค่าเป็น URL ของแผงด้านข้างจากไฟล์ Manifest

  • unloadSidePanel() เมธอดจะปิด iframe ของแผงด้านข้าง ระบบจะไม่เก็บสถานะส่วนเสริมไว้ใน Meet เมื่อเรียกใช้เมธอด ขึ้นอยู่กับส่วนเสริมว่าจะเก็บสถานะส่วนเสริมไว้ก่อนเรียกใช้เมธอดนี้หรือไม่

ฟีเจอร์ที่ใช้ได้เฉพาะใน MeetSidePanelClient ออบเจ็กต์