AddonSessionHandler

@PublicApi
public interface AddonSessionHandler



セッション用にアドオンアプリによって提供されるコールバック。

まとめ

ネストされた型

onSessionEnded コールバックがトリガーされた理由を示します。

アドオン セッションの参加者から割り当てまたは取り消された権限を表します。

パブリック メソッド

default void

アドオン セッションのコラボレーション開始状態の最新状態を受け取ります。

default void

ユーザーによるアドオン セッションへの参加方法を定義する権限の最新の状態を受け取ります。

abstract void

アドオン セッションの終了に応答します。

パブリック メソッド

onCollaborationStartingStateUpdate

default void onCollaborationStartingStateUpdate(
    CollaborationStartingState collaborationStartingState
)

アドオン セッションのコラボレーション開始状態の最新状態を受け取ります。

アドオンがコラボレーションの開始状態をサポートするには、具体的な実装が必要です。

onParticipantPrivilegeChanged

default void onParticipantPrivilegeChanged(
    List<AddonSessionHandler.Privilege> privileges,
    List<AddonSessionHandler.Privilege> disabledPrivileges
)

ユーザーによるアドオン セッションへの参加方法を定義する権限の最新の状態を受け取ります。

アドオンで主催者用ボタンをサポートするには、具体的な実装が必要です。

onSessionEnded

abstract void onSessionEnded(AddonSessionHandler.EndReason endReason)

アドオン セッションの終了に応答します。

  1. このハンドラ インスタンスで新しい AddonSession が作成されない限り、このハンドラは追加の呼び出しを受け取りません。
  2. SDK は自動的にクリーンアップされます。endSession に対する追加の呼び出しは必要ありません。

実装例:

if (EndReason.SESSION_ENDED_UNEXPECTEDLY.equals(endReason)) {
  log("Something happened unexpectedly");
  // Display UI to user in case they want to reconnect.
  return;
}

if (EndReason.MEETING_ENDED_BY_USER.equals(endReason)) {
  // The meeting is disconnected because the user left the meeting. Perform some
  // cleanup, then exit.
  this.onMeetingDisconnected();
  return;
}

if (EndReason.SESSION_ENDED_BY_USER.equals(endReason)) {
  // Disconnected because the user left the session from the Meet application. However, the
  // conference is still active in Meet. Perform some cleanup, then listen for a possible
  // rejoin event.
  this.onSessionDisconnected();
  return;
}
パラメータ
AddonSessionHandler.EndReason endReason

セッションが終了した理由