АддонСессия

@PublicApi
interface AddonSession


Дополнительный сеанс.

Содержит методы, общие для всех дополнительных сеансов. Чтобы получить доступ к совместному просмотру и совместной работе, вызовите getCoWatching и getCoDoing соответственно.

Краткое содержание

Вложенные типы

Строитель для AddonSession .

Общественные функции

ListenableFuture < Void !>!

Завершает дополнительный сеанс и отключается от приложения Meet.

Unit

Выход из состояния приостановки.

CoDoingClient !

Возвращает экземпляр CoDoingClient .

CoWatchingClient !

Возвращает экземпляр CoWatchingClient .

AddonMeetingInfo !

Возвращает информацию о подключенном собрании, например URL-адрес собрания.

Boolean

Возвращает true , если сеанс завершился.

Boolean

Указывает, приостановлен ли сеанс.

Unit

Сбрасывает начальное состояние дополнения.

Unit

Приостанавливает дополнительный сеанс.

Unit

Обновляет начальное состояние дополнения.

Unit

Обновляет метаданные для этого участника.

Общественные функции

endSession

fun endSession(): ListenableFuture<Void!>!

Завершает дополнительный сеанс и отключается от приложения Meet. Это не заставляет Meet завершать собрание и не заставляет пользователя покидать собрание.

Если сеанс уже завершился, это не операция; это не вызовет исключения.

Возврат
ListenableFuture < Void !>!

ListenableFuture , который оценивается как успех, или AddonException , если произошла непредвиденная ошибка

конецПриостановка

fun endSuspension(): Unit

Выход из состояния приостановки. Дополнительное приложение снова может отправлять и получать обновления.

Если это не находится в состоянии приостановления, это неактивная операция.

Броски
java.lang.IllegalStateException

если сессия закончилась. Это может быть либо явный вызов endSession , либо это может быть связано с внешней причиной, которая будет обнаружена через onSessionEnded .

getCoDoing

fun getCoDoing(): CoDoingClient!

Возвращает экземпляр CoDoingClient .

Броски
java.lang.IllegalStateException

если сеанс был построен без вызова withCoDoing или сеанс завершился

GetCoWatching

fun getCoWatching(): CoWatchingClient!

Возвращает экземпляр CoWatchingClient .

Броски
java.lang.IllegalStateException

если сеанс был построен без вызова withCoWatching или сеанс завершился

getMeetingInfo

fun getMeetingInfo(): AddonMeetingInfo!

Возвращает информацию о подключенном собрании, например URL-адрес собрания.

Броски
java.lang.IllegalStateException

если сессия закончилась. Это может быть либо явный вызов endSession , либо это может быть связано с внешней причиной, которая будет обнаружена через onSessionEnded .

isSessionEnded

fun isSessionEnded(): Boolean

Возвращает true , если сеанс завершился. Это может быть либо из-за явного вызова endSession , либо из-за внешней причины, которая будет обнаружена через onSessionEnded .

Броски
java.lang.IllegalStateException

если сессия закончилась. Это может быть либо явный вызов endSession , либо это может быть связано с внешней причиной, которая будет обнаружена через onSessionEnded

isSuspended

fun isSuspended(): Boolean

Указывает, приостановлен ли сеанс. См. suspend и endSuspension .

Броски
java.lang.IllegalStateException

если сессия закончилась. Это может быть либо явный вызов endSession , либо это может быть связано с внешней причиной, которая будет обнаружена через onSessionEnded .

сбросколлаборатионстартингстате

fun resetCollaborationStartingState(): Unit

Сбрасывает начальное состояние дополнения. Это очистит исходное состояние, полученное ранее другими участниками. Начальное состояние может быть сброшено только инициатором.

приостановить

fun suspend(): Unit

Приостанавливает дополнительный сеанс. Это НЕ отключит приложение Meet. Это приводит к тому, что SDK избегает отправки обновлений в ваши CoDoingHandler и CoWatchingHandler , а также заставляет SDK игнорировать вызовы для уведомления вызовов и игнорировать вызовы для обновления глобального состояния.

Если сеанс уже приостановлен, это недопустимо.

Например, вы можете выбрать вызов suspend , когда пользователь (но не каждый пользователь) прерывает воспроизведение для просмотра рекламы, когда пользователь включает приложение в фоновом режиме и т. д.

Броски
java.lang.IllegalStateException

если сессия закончилась. Это может быть либо явный вызов endSession , либо это может быть связано с внешней причиной, которая будет обнаружена через onSessionEnded .

обновлениеколлаборатионстартингстате

fun updateCollaborationStartingState(
    startingState: CollaborationStartingState!
): Unit

Обновляет начальное состояние дополнения. Его получают другие участники, когда они принимают приглашение к сотрудничеству. Начальное состояние может быть обновлено только инициатором.

Параметры
startingState: CollaborationStartingState !

начальное состояние дополнения

updateParticipantMetadata

fun updateParticipantMetadata(metadata: ByteArray!): Unit

Обновляет метаданные для этого участника.

Чтобы получать метаданные от других участников, обработчик должен быть зарегистрирован путем вызова withParticipantMetadata при построении AddonSession .

Закодированные метаданные ограничены MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES байтами на участника.

Параметры
metadata: ByteArray !

закодированный блок метаданных, который описывает соответствующие метаданные для локального участника

Броски
java.lang.IllegalArgumentException

если предоставленные метаданные превышают MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES байт

java.lang.IllegalStateException

если сессия закончилась. Это может быть либо явный вызов endSession , либо это может быть связано с внешней причиной, которая будет обнаружена через onSessionEnded .