Co-Doing API を使用すると、会議間で任意のデータを同期できます。 できます。アプリが依存する任意のデータを指定できます。
データを送信するには、データを Uint8Array
にシリアル化する必要があります。詳細情報
詳しくは、JavaScript 標準ライブラリ
参照をご覧ください。
データをシリアル化する方法がわからない場合は、コードサンプルを確認する できます。
このガイドでは、Co-Doing API を実装する方法について説明します。
始める
Co-Doing API を使用するには、まず Meet アドオン。1 回 Co-Doing API の使用を開始できます 編集することもできます。
Co-Doing API を使用するには、まず
AddonSession
オブジェクト、
Google Meet の共同アクティビティへのエントリ ポイントとなります。
TypeScript
const session = await window.meet.addon.createAddonSession({
cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
});
CLOUD_PROJECT_NUMBER は、Google Cloud プロジェクトのプロジェクト番号に置き換えます。
共同作業クライアントを作成する
まず、AddonSession
から CoDoingClient
オブジェクトを作成します。
CoDoingClient
を作成するには、createCoDoingClient()
メソッドを呼び出して CoDoingDelegate
オブジェクトを指定します。
CoDoingDelegate
は、Co-Doing API の仕組みです。
は、新しい状態が利用可能になったときにアプリを更新します。想定できるのは
onCoDoingStateChanged()
メソッドが呼び出されると、アプリは新しい状態をすぐに適用します。
次のコードサンプルは、Co-Doing API の使用方法を示しています。
TypeScript
interface MyState {
someString: string;
someNumber: number;
}
/**
* Serialize/deserialize using JSON.stringify
* You can use any method you want; this is included for as an example
*/
function toBytes(state: MyState): Uint8Array {
return new TextEncoder().encode(JSON.stringify(state));
}
function fromBytes(bytes: Uint8Array): MyState {
return JSON.parse(new TextDecoder().decode(bytes)) as MyState;
}
const coDoingClient = await addonSession.createCoDoingClient({
activityTitle: "ACTIVITY_TITLE",
onCoDoingStateChanged(coDoingState: CoDoingState) {
const newState = fromBytes(coDoingState.bytes);
// This function should apply the new state to your ongoing CoDoing activity
},
});
ACTIVITY_TITLE は、アクティビティのタイトルに置き換えます。
現状の管理
ユーザーがアプリ内でアクションを起こしたときは、すぐにそのアプリが
を
broadcastStateUpdate()
メソッドを呼び出します。
次のコードサンプルは、
broadcastStateUpdate()
メソッド:
TypeScript
const myState: MyState = {
someString: "SOME_STRING",
someNumber: 0
};
document.getElementById('some-button').onClick(() => {
myState.someNumber = myState.someNumber + 1;
coDoingClient.broadcastStateUpdate({ bytes: toBytes(myState) });
});
SOME_STRING は、アプリの現在の状態に置き換えます。