AddonSession

@PublicApi
public interface AddonSession



Uma sessão complementar.

Contém métodos comuns a todas as sessões de complementos. Para acessar e assistir em grupo, chame getCoWatching e getCoDoing, respectivamente.

Resumo

Tipos aninhados

Um builder para a classe AddonSession.

Métodos públicos

abstract ListenableFuture<Void>

Encerra a sessão do complemento e se desconecta do app Meet.

abstract void

Sai do estado de suspensão.

abstract CoDoingClient

Retorna a instância CoDoingClient.

abstract CoWatchingClient

Retorna a instância CoWatchingClient.

abstract AddonMeetingInfo

Retorna informações sobre a reunião conectada, como o URL dela.

abstract boolean

Retorna true se a sessão tiver terminado.

abstract boolean

Indica se a sessão está suspensa.

abstract void

Redefine o estado inicial do complemento.

abstract void

Suspende a sessão do complemento.

abstract void

Atualiza o estado inicial do complemento.

abstract void
updateParticipantMetadata(byte[] metadata)

Atualiza os metadados deste participante.

Métodos públicos

endSession

abstract ListenableFuture<VoidendSession()

Encerra a sessão do complemento e desconecta o app Meet. Isso não força o Meet a encerrar a reunião nem faz com que o usuário saia dela.

Se a sessão já tiver terminado, é um ambiente autônomo e não vai gerar uma exceção.

Retorna
ListenableFuture<Void>

um ListenableFuture que é avaliado como sucesso ou um AddonException se houver um erro inesperado

endSuspension

abstract void endSuspension()

Sai do estado de suspensão. O aplicativo do complemento poderá enviar e receber atualizações novamente.

Se não estiver em estado suspenso, é um ambiente autônomo.

Gera
java.lang.IllegalStateException

se a sessão tiver terminado. Pode ser uma chamada explícita para endSession ou um motivo externo que apareceria por onSessionEnded.

getCoDoing

abstract CoDoingClient getCoDoing()

Retorna a instância CoDoingClient.

Gera
java.lang.IllegalStateException

se a sessão foi criada sem chamar withCoDoing ou se a sessão foi encerrada.

getCoWatching

abstract CoWatchingClient getCoWatching()

Retorna a instância CoWatchingClient.

Gera
java.lang.IllegalStateException

se a sessão foi criada sem chamar withCoWatching ou se a sessão foi encerrada.

getMeetingInfo

abstract AddonMeetingInfo getMeetingInfo()

Retorna informações sobre a reunião conectada, como o URL dela.

Gera
java.lang.IllegalStateException

se a sessão tiver terminado. Pode ser uma chamada explícita para endSession ou um motivo externo que apareceria por onSessionEnded.

isSessionEnded

abstract boolean isSessionEnded()

Retorna true se a sessão tiver terminado. Isso pode ser devido a uma chamada explícita para endSession ou a um motivo externo que aparece por onSessionEnded.

Gera
java.lang.IllegalStateException

se a sessão tiver terminado. Pode ser uma chamada explícita para endSession ou um motivo externo que aparece por onSessionEnded.

isSuspended

abstract boolean isSuspended()

Indica se a sessão está suspensa. Consulte suspend e endSuspension.

Gera
java.lang.IllegalStateException

se a sessão tiver terminado. Pode ser uma chamada explícita para endSession ou um motivo externo que apareceria por onSessionEnded.

resetCollaborationStartingState

abstract void resetCollaborationStartingState()

Redefine o estado inicial do complemento. Isso limpará o estado inicial recebido anteriormente por outros participantes. O estado inicial só pode ser redefinido pelo iniciador.

suspend

abstract void suspend()

Suspende a sessão do complemento. Essa ação NÃO é desconectada do app Meet. Isso faz com que o SDK evite o envio de atualizações para CoDoingHandler e CoWatchingHandler, além de ignorar chamadas para notificar e ignorar chamadas para atualizar o estado global.

Se a sessão já estiver suspensa, trata-se de um ambiente autônomo.

Por exemplo, você pode optar por chamar suspend quando um usuário, mas não todos, tem a reprodução interrompida para visualizar um anúncio, quando um usuário coloca o aplicativo em segundo plano etc.

Gera
java.lang.IllegalStateException

se a sessão tiver terminado. Pode ser uma chamada explícita para endSession ou um motivo externo que apareceria por onSessionEnded.

updateCollaborationStartingState

abstract void updateCollaborationStartingState(
    CollaborationStartingState startingState
)

Atualiza o estado inicial do complemento. Os outros participantes recebem esta mensagem quando eles aceitam o convite para colaborar. O estado inicial só pode ser atualizado pelo iniciador.

Parâmetros
CollaborationStartingState startingState

o estado inicial do complemento

updateParticipantMetadata

abstract void updateParticipantMetadata(byte[] metadata)

Atualiza os metadados deste participante.

Para receber metadados de outros participantes, um gerenciador precisa ser registrado chamando withParticipantMetadata durante a criação do AddonSession.

Os metadados codificados têm o limite de MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES bytes por participante.

Parâmetros
byte[] metadata

um blob codificado de metadados que descreve metadados relevantes para o participante local

Gera
java.lang.IllegalArgumentException

se os metadados fornecidos excederem MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES bytes

java.lang.IllegalStateException

se a sessão tiver terminado. Pode ser uma chamada explícita para endSession ou um motivo externo que apareceria por onSessionEnded.