Co-Watching API は、アプリでコンテンツを視聴または聴取する複数の参加者の会議エクスペリエンスを管理します。
このガイドでは、Co-Watching API を実装する方法について説明します。
始める
Co-Watching API を使用するには、まず Meet アドオンを デプロイする必要があります。これらの手順が完了したら、新しいアドオン内から Co-Watching API の使用を開始できます。
Co-Watching API を使用するには、まず
AddonSession オブジェクトを取得します。
これは、Google Meet の共同アクティビティのエントリ ポイントとして機能します。
TypeScript
const session = await window.meet.addon.createAddonSession({
cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
});
CLOUD_PROJECT_NUMBER は、 Google Cloud プロジェクトのプロジェクト番号に置き換えます。
同時視聴クライアントを作成する
まず、
CoWatchingClient
オブジェクトを AddonSession から作成します。
CoWatchingCient を作成するには、
createCoWatchingClient()
メソッドを呼び出し、
CoWatchingDelegate
オブジェクトを指定します。
CoWatchingDelegate は、新しい状態が利用可能になったときに Co-Watching API がアプリを更新する方法です。
onCoWatchingStateChanged()
メソッドが呼び出されると、アプリはすぐに新しい状態を適用することが想定されます。
次のコードサンプルは、Co-Watching API の使用方法を示しています。
TypeScript
const coWatchingClient = await addonSession.createCoWatchingClient({
activityTitle: "ACTIVITY_TITLE",
onCoWatchingStateQuery() {
// This function should return the current state of your CoWatching activity
return getMyApplicationCoWatchingState();
},
onCoWatchingStateChanged(coWatchingState: CoWatchingState) {
// This function should apply newState to your ongoing CoWatching activity
},
});
ACTIVITY_TITLE は、アクティビティのメディア タイトルに置き換えます。
現在の状態を管理する
ユーザーがアプリケーションで操作を行うと、アプリケーションは提供された API メソッドをすぐに呼び出すことが想定されます。
これらのメソッドは、重要なイベントに応答してのみ呼び出す必要があります。たとえば、アプリが再生中の動画を進めるたびに呼び出す必要はありません。作成した CoWatchingDelegate は、このような状況で更新された再生位置を取得します。
次のメソッドを使用して、同時視聴の状態を制御できます。
notifyBuffering(): 以前のメディア切り替え、メディア シーク、ネットワークの輻輳によるバッファリングが原因で、ユーザーのアプリがバッファリングを開始したときに呼び出します。notifyPauseState(): ユーザーが再生中のメディアを一時停止または一時停止解除したときに呼び出します。notifyPlayoutRate(): ユーザーが再生速度を新しい値(1.25 倍など)に更新したときに呼び出します。notifyReady(): バッファリングが完了し、メディアを再生できるようになったときに呼び出します。notifySeekToTimestamp(): ユーザーが再生位置を明示的に変更したときに呼び出します。notifySwitchToMedia(): 再生中のメディアが変更されるたびに呼び出します。たとえば、ユーザーが新しい動画を選択した場合や、自動再生で次の動画が開始された場合などです。