このページでは、アドオンが Google Meet と通信するために必要なクライアント オブジェクトを管理する方法について説明します。
まず、アドオンはセッションを確立する必要があります。
const session = await window.meet.addon.createAddonSession({
cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
});
CLOUD_PROJECT_NUMBER は、Google Cloud プロジェクトのプロジェクト番号に置き換えます。
セッションから、次の 2 つのクライアント オブジェクトを作成できます。
メインステージで実行されているアドオンの
MeetMainStageClient。await session.createMainStageClient()を使用して取得できます。サイドパネルで実行されているアドオンの
MeetSidePanelClient。await session.createSidePanelClient()を使用して取得できます。
メインステージまたはサイドパネルのいずれかについて、正しいクライアント オブジェクトを取得することが重要です。間違ったクライアントが取得された場合、Google Meet アドオン SDK は例外をスローします。アドオンが実行されている iframe(メインステージまたはサイドパネル)を確認するには、getFrameType() メソッドを使用します。
次のコードサンプルは、メインステージ クライアント オブジェクトをインスタンス化する方法を示しています。
const session = await window.meet.addon.createAddonSession({
cloudProjectNumber: "CLOUD_PROJECT_NUMBER"
});
const mainStageClient = await session.createMainStageClient();
CLOUD_PROJECT_NUMBER は、Cloud プロジェクトのプロジェクト番号に置き換えます。
共通の機能
一部の機能は MeetMainStageClient オブジェクトと MeetSidePanelClient オブジェクトの両方で使用できますが、特定のクライアントに固有の機能もあります。
たとえば、両方のクライアントで利用できる機能には次のようなものがあります。
- 参加者がアクティビティへの参加を承諾したときに、アドオンの初期状態に関する情報を取得する
getActivityStartingState()メソッド。 - アドオンが実行されている会議の詳細を取得する
getMeetingInfo()メソッド。 - 参加者がアクティビティへの参加招待を承諾したときに、アドオンの初期状態を設定する
setActivityStartingState()メソッド。 - 両方のクライアントの機能の一覧については、
MeetAddonClientオブジェクトをご覧ください。
クライアント固有の機能
MeetMainStageClient オブジェクトでのみ使用できる機能:
notifySidePanel()メソッドは、サイドパネルにメッセージを送信します。メッセージは、サイドパネルでframeToFrameMessageコールバックをサブスクライブすることで受信できます。loadSidePanel()メソッドは、サイドパネルの iframe を開きます。iframe のソースは、マニフェスト ファイルのサイドパネル URL に設定されます。unloadSidePanel()メソッドは、サイドパネルの iframe を閉じます。このメソッドが呼び出されると、Meet 内でアドオンの状態が保持されなくなります。このメソッドが呼び出される前に、アドオンの状態を保持するのはアドオンの責任です。
MeetSidePanelClient オブジェクトでのみ使用できる機能:
notifyMainStage()メソッドは、mainStage にメッセージを送信します。メッセージを受信するには、メインステージでframeToFrameMessageコールバック プロパティをサブスクライブします。