Ganti CLOUD_PROJECT_NUMBER dengan nomor project Google Cloud Anda.
Dari sesi tersebut, dua objek klien dapat dibuat:
MeetMainStageClient
untuk add-on yang berjalan di tahap
utama, yang dapat diambil menggunakan await
session.createMainStageClient().
MeetSidePanelClient
untuk add-on yang berjalan di panel
samping, dapat diambil menggunakan await
session.createSidePanelClient().
Penting untuk mengambil objek klien yang benar untuk panggung utama atau panel samping. Jika klien yang salah diambil, Google Meet Add-on SDK akan memunculkan pengecualian. Untuk memeriksa iframe (tahap utama atau panel samping) tempat add-on berjalan, gunakan metode
getFrameType().
Contoh kode berikut menunjukkan cara membuat instance objek klien panggung utama:
Ganti CLOUD_PROJECT_NUMBER dengan nomor project Cloud Anda.
Fitur bersama
Beberapa fitur tersedia di objek MeetMainStageClient dan
MeetSidePanelClient, sedangkan fitur lainnya khusus untuk klien
tertentu.
Misalnya, beberapa fitur yang tersedia di kedua klien meliputi:
Metode getActivityStartingState() yang mendapatkan informasi tentang status awal add-on saat peserta menerima undangan untuk bergabung dengan aktivitas.
Metode getMeetingInfo()
yang mendapatkan detail tentang rapat tempat add-on
berjalan.
Metode
setActivityStartingState()
yang menetapkan status awal add-on
saat peserta menerima undangan untuk bergabung ke aktivitas.
Untuk mengetahui daftar lengkap fitur di kedua klien, lihat objek
MeetAddonClient.
Metode notifySidePanel()
mengirim pesan ke panel samping. Pesan dapat diterima dengan
berlangganan ke
callback frameToFrameMessage di panel samping.
Metode loadSidePanel()
membuka iframe panel samping. Sumber iframe disetel ke URL panel samping dari file manifes.
Metode unloadSidePanel()
menutup iframe panel samping. Status add-on tidak dipertahankan dalam Meet saat metode dipanggil.
Add-on yang akan mempertahankan status add-on apa pun sebelum metode ini dipanggil.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-08-29 UTC."],[],[],null,["# Manage client objects\n\nThis page describes how to manage client objects that an\nadd-on needs to communicate with Google Meet.\n\nFirst, the add-on needs to establish a session: \n\n const session = await window.meet.addon.createAddonSession({\n cloudProjectNumber: \"\u003cvar translate=\"no\"\u003eCLOUD_PROJECT_NUMBER\u003c/var\u003e\",\n });\n\nReplace \u003cvar translate=\"no\"\u003eCLOUD_PROJECT_NUMBER\u003c/var\u003e with the project number of your\nGoogle Cloud project.\n\nFrom the session, two client objects can be created:\n\n- The [`MeetMainStageClient`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetmainstageclient)\n for an add-on running in the [main\n stage](/workspace/meet/add-ons/guides/overview#main-stage), retrievable using `await\n session.createMainStageClient()`.\n\n- The [`MeetSidePanelClient`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetsidepanelclient)\n for an add-on running in the [side\n panel](/workspace/meet/add-ons/guides/overview#side-panel), retrievable using `await\n session.createSidePanelClient()`.\n\nIt's important to retrieve the correct client object for either the main stage\nor side panel. If the wrong client is retrieved, the Google Meet add-ons SDK throws\nan exception. To check which iframe (main stage or side panel) the\nadd-on is running in, use the\n[`getFrameType()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetaddon.getframetype)\nmethod.\n\nThe following code sample shows how to instantiate the main stage client object: \n\n const session = await window.meet.addon.createAddonSession({\n cloudProjectNumber: \"\u003cvar translate=\"no\"\u003eCLOUD_PROJECT_NUMBER\u003c/var\u003e\"\n });\n const mainStageClient = await session.createMainStageClient();\n\nReplace \u003cvar translate=\"no\"\u003eCLOUD_PROJECT_NUMBER\u003c/var\u003e with the project number of your\nCloud project.\n\nShared features\n---------------\n\nSome features are available in both the `MeetMainStageClient` and the\n`MeetSidePanelClient` object, whereas other features are specific to a certain\nclient.\n\nFor example, some features that are available in both clients include:\n\n- The [`getActivityStartingState()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetaddonclient.getactivitystartingstate) method that gets information about the initial state of the add-on when the participant accepts the invitation to join the activity.\n- The [`getMeetingInfo()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetaddonclient.getmeetinginfo) method that gets details about the meeting in which the add-on is running.\n- The [`setActivityStartingState()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetaddonclient.setactivitystartingstate) method that sets the initial state of the add-on when the participant accepts the invitation to join the activity.\n- For a comprehensive list of features in both clients, see the [`MeetAddonClient`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetaddonclient) object.\n\nClient-specific features\n------------------------\n\nFeatures available only in the\n[`MeetMainStageClient`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetmainstageclient)\nobject:\n\n- The [`notifySidePanel()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetmainstageclient.notifysidepanel)\n method sends a message to the side panel. The message can be received by\n subscribing to the [`frameToFrameMessage`\n callback](/workspace/meet/add-ons/guides/frame-to-frame-messaging) in the side panel.\n\n- The [`loadSidePanel()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetmainstageclient.loadsidepanel)\n method opens the side-panel iframe. The iframe source is set to the\n side-panel URL from the manifest file.\n\n- The [`unloadSidePanel()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetmainstageclient.unloadsidepanel)\n method closes the side-panel iframe. The add-on\n state isn't retained within Meet when the method is called.\n It's up to the add-on to persist any\n add-on state before this method is called.\n\nFeatures available only in the\n[`MeetSidePanelClient`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetsidepanelclient)\nobject:\n\n- The [`notifyMainStage()`](/workspace/meet/add-ons/reference/websdk/addon_sdk.meetsidepanelclient.notifymainstage) method sends a message to the mainStage. The message can be received by subscribing to the [`frameToFrameMessage` callback\n property](/workspace/meet/add-ons/guides/frame-to-frame-messaging) in the mainstage."]]