AddonSession

@PublicApi
public interface AddonSession



Una sessione aggiuntiva.

Contiene metodi comuni a tutte le sessioni dei componenti aggiuntivi. Per accedere alla visione condivisa e alle attività condivise, chiama rispettivamente getCoWatching e getCoDoing.

Riepilogo

Tipi nidificati

Un costruttore per AddonSession.

Metodi pubblici

abstract ListenableFuture<Void>

Termina la sessione del componente aggiuntivo e si disconnette dall'app Meet.

abstract void

Esce dallo stato di sospensione.

abstract CoDoingClient

Restituisce l'istanza CoDoingClient.

abstract CoWatchingClient

Restituisce l'istanza CoWatchingClient.

abstract AddonMeetingInfo

Restituisce informazioni sulla riunione collegata, ad esempio l'URL della riunione.

abstract boolean

Restituisce true se la sessione è terminata.

abstract boolean

Indica se la sessione è sospesa.

abstract void

Reimposta lo stato iniziale del componente aggiuntivo.

abstract void

Sospende la sessione del componente aggiuntivo.

abstract void

Aggiorna lo stato iniziale del componente aggiuntivo.

abstract void
updateParticipantMetadata(byte[] metadata)

Aggiorna i metadati per questo partecipante.

Metodi pubblici

endSession

abstract ListenableFuture<VoidendSession()

Termina la sessione del componente aggiuntivo e si disconnette dall'app Meet. Questa operazione non obbliga Meet a terminare la riunione né l'utente ad abbandonare la riunione.

Se la sessione è già terminata, si tratta di un'operazione autonoma e non genererà un'eccezione.

Ritorni
ListenableFuture<Void>

un elemento ListenableFuture che ha esito positivo o AddonException in caso di errore imprevisto

endSuspension

abstract void endSuspension()

Esce dallo stato di sospensione. L'app del componente aggiuntivo è di nuovo in grado di inviare e ricevere aggiornamenti.

Se questo non è in stato di sospensione, è una procedura no-op.

Lanci
java.lang.IllegalStateException

se la sessione è terminata. Potrebbe trattarsi di una chiamata esplicita a endSession o di un motivo esterno, rilevato tramite onSessionEnded.

getCoDoing

abstract CoDoingClient getCoDoing()

Restituisce l'istanza CoDoingClient.

Lanci
java.lang.IllegalStateException

se la sessione è stata creata senza chiamare withCoDoing o se è terminata

getCoWatching

abstract CoWatchingClient getCoWatching()

Restituisce l'istanza CoWatchingClient.

Lanci
java.lang.IllegalStateException

se la sessione è stata creata senza chiamare withCoWatching o se è terminata

getMeetingInfo

abstract AddonMeetingInfo getMeetingInfo()

Restituisce informazioni sulla riunione collegata, ad esempio l'URL della riunione.

Lanci
java.lang.IllegalStateException

se la sessione è terminata. Potrebbe trattarsi di una chiamata esplicita a endSession o di un motivo esterno, rilevato tramite onSessionEnded.

isSessionEnded

abstract boolean isSessionEnded()

Restituisce true se la sessione è terminata. Potrebbe essere dovuto a una chiamata esplicita a endSession o a un motivo esterno, rilevato tramite onSessionEnded.

Lanci
java.lang.IllegalStateException

se la sessione è terminata. Potrebbe trattarsi di una chiamata esplicita a endSession o essere dovuta a un motivo esterno, rilevato tramite onSessionEnded

isSuspended

abstract boolean isSuspended()

Indica se la sessione è sospesa. Leggi i suspend e le endSuspension.

Lanci
java.lang.IllegalStateException

se la sessione è terminata. Potrebbe trattarsi di una chiamata esplicita a endSession o di un motivo esterno, rilevato tramite onSessionEnded.

resetCollaborationStartingState

abstract void resetCollaborationStartingState()

Reimposta lo stato iniziale del componente aggiuntivo. Questa azione cancellerà lo stato iniziale ricevuto in precedenza dagli altri partecipanti. Lo stato iniziale può essere reimpostato solo da chi l'ha iniziato.

suspend

abstract void suspend()

Sospende la sessione del componente aggiuntivo. Questa operazione NON disconnette dall'app Meet. In questo modo, l'SDK evita di inviare aggiornamenti a CoDoingHandler e CoWatchingHandler e l'SDK ignora le chiamate per notificare le chiamate e ignorarle per aggiornare lo stato globale.

Se la sessione è già sospesa, non è possibile farlo.

Ad esempio, puoi scegliere di chiamare suspend quando un utente, ma non tutti, ha interrotto la riproduzione per visualizzare un annuncio, quando un utente esegue l'applicazione in background e così via.

Lanci
java.lang.IllegalStateException

se la sessione è terminata. Potrebbe trattarsi di una chiamata esplicita a endSession o di un motivo esterno, rilevato tramite onSessionEnded.

updateCollaborationStartingState

abstract void updateCollaborationStartingState(
    CollaborationStartingState startingState
)

Aggiorna lo stato iniziale del componente aggiuntivo. Questo viene ricevuto dagli altri partecipanti quando accettano l'invito a collaborare. Lo stato iniziale può essere aggiornato solo da chi l'ha iniziato.

Parametri
CollaborationStartingState startingState

lo stato iniziale del componente aggiuntivo

updateParticipantMetadata

abstract void updateParticipantMetadata(byte[] metadata)

Aggiorna i metadati per questo partecipante.

Per ricevere metadati da altri partecipanti, un gestore deve essere registrato chiamando conMetadataMetadata durante la creazione dell'AddonSession.

I metadati codificati sono limitati a MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES byte per partecipante.

Parametri
byte[] metadata

un blob codificato di metadati che descrive i metadati pertinenti per il partecipante locale

Lanci
java.lang.IllegalArgumentException

se i metadati forniti superano MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES byte

java.lang.IllegalStateException

se la sessione è terminata. Potrebbe trattarsi di una chiamata esplicita a endSession o di un motivo esterno, rilevato tramite onSessionEnded.