AddonSessionHandler

@PublicApi
interface AddonSessionHandler


Von der Add-on-App für eine Sitzung bereitgestellte Callbacks.

Zusammenfassung

Verschachtelte Typen

Beschreibt, warum der onSessionEnded-Callback ausgelöst wurde.

Beschreibt eine Berechtigung, die einem Teilnehmer in einer Add-on-Sitzung zugewiesen oder widerrufen wird.

Öffentliche Funktionen

Unit
onCollaborationStartingStateUpdate(
    collaborationStartingState: CollaborationStartingState!
)

Empfängt den letzten Startstatus der Add-on-Sitzung beim Start der Zusammenarbeit.

Unit

Erhält den aktuellen Berechtigungsstatus, mit dem festgelegt wird, wie der Nutzer an einer Add-on-Sitzung teilnehmen darf.

Unit

Reagiert auf das Ende der Add-on-Sitzung.

Öffentliche Funktionen

onCollaborationStartingStateUpdate

fun onCollaborationStartingStateUpdate(
    collaborationStartingState: CollaborationStartingState!
): Unit

Empfängt den letzten Startstatus der Add-on-Sitzung beim Start der Zusammenarbeit.

Für das Add-on ist eine konkrete Implementierung erforderlich, um den Beginn der Zusammenarbeit zu unterstützen.

onParticipantPrivilegeChanged

fun onParticipantPrivilegeChanged(
    privileges: (Mutable)List<AddonSessionHandler.Privilege!>!,
    disabledPrivileges: (Mutable)List<AddonSessionHandler.Privilege!>!
): Unit

Erhält den aktuellen Berechtigungsstatus, mit dem festgelegt wird, wie der Nutzer an einer Add-on-Sitzung teilnehmen darf.

Für das Add-on ist eine konkrete Implementierung erforderlich, um Steuerelemente für den Organisator zu unterstützen.

onSessionEnded

fun onSessionEnded(endReason: AddonSessionHandler.EndReason!): Unit

Reagiert auf das Ende der Add-on-Sitzung.

  1. Dieser Handler empfängt keine zusätzlichen Aufrufe, es sei denn, ein neuer AddonSession wird mit derselben Handler-Instanz erstellt.
  2. Das SDK bereinigt sich selbst. Es ist kein zusätzlicher Aufruf von endSession erforderlich.

Implementierungsbeispiel:

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;
}
Parameter
endReason: AddonSessionHandler.EndReason!

den Grund für das Ende der Sitzung