AddonClient

@PublicApi
interface AddonClient


Interface principale permettant de démarrer et d'arrêter une session de module complémentaire.

Remarque:Une seule session peut être active à la fois, sinon le ListenableFuture renvoyé par begin sera résolu avec une erreur . Une session peut se terminer d'elle-même (par exemple, l'utilisateur a quitté la réunion) et appeler onSessionEnded, ou la session peut être arrêtée en appelant endSession.

Exemple d'utilisation:

class AwesomeAddonSessionHandler implements AddonSessionHandler {}

class AwesomeCoWatchingHandler implements CoWatchingHandler {}

public void registerStatusListener() {
  AddonClient meetClient = AddonClientFactory.getClient();
  meetClient.registerMeetingStatusListener(
      appContext,
      meetingStatus -> {
        switch (meetingStatus.status()) {
          case NO_MEETING:
            // User is not in a meeting currently.
            break;
          case MEETING:
            // User is in a meeting, check if they want to start an add-on session.
            showStartAddonSessionDialog();
            break;
          case ADDON_SESSION:
            // User is in a meeting that already hosts an add-on session, check if they want
            // to join the ongoing session.
            showJoinAddonSessionDialog();
            break;
        }
      },
      Optional.empty());
}

public ListenableFuture<AddonClient> initialSetup() {
  AddonClient meetClient = AddonClientFactory.getClient();
  return meetClient
      .newSessionBuilder(appContext, new AwesomeAddonSessionHandler())
      .withCoWatching(new AwesomeCoWatchingHandler())
      .begin();
}

Résumé

Types imbriqués

Représente un événement d'échec qui s'est produit avant, pendant ou après une session complémentaire.

Fonctions publiques

AddonSession.Builder!

Renvoie un compilateur pour une nouvelle session de module complémentaire.

Unit
notifyAddonFailureEvent(
    appContext: Context!,
    failureEventType: AddonClient.AddonFailureEventType!
)

Notifie Meet en cas d'échec du module complémentaire.

Unit
registerMeetingStatusListener(
    appContext: Context!,
    listener: MeetingStatusListener!,
    handler: Optional<Handler!>!
)

Enregistre un écouteur pour être averti des changements d'état des réunions et des sessions complémentaires.

Unit

Annule l'enregistrement d'un écouteur actif pour les modifications de MeetingStatus.

Fonctions publiques

newSessionBuilder

fun newSessionBuilder(handler: AddonSessionHandler!): AddonSession.Builder!

Renvoie un compilateur pour une nouvelle session de module complémentaire. La session ne commencera qu'une fois la méthode begin appelée.

Pour démarrer une session, associez d'abord withCoWatching, withCoDoing ou les deux à ce compilateur.

Exemple d'utilisation:

ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(appContext, new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withCoDoing(new AwesomeCoDoingHandler())
    .begin();
Pour exploiter la fonctionnalité de métadonnées des participants, appelez withParticipantMetadata sur la chaîne de compilateur afin de spécifier l'état initial et d'enregistrer un écouteur pour les autres participants. Par exemple :
ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withParticipantMetadata(new AwesomeMetadataHandler(), myMetadataBytes)
    .begin(appContext);
Consultez la section begin pour en savoir plus sur le démarrage d'une session.
Paramètres
handler: AddonSessionHandler!

Rappels qui s'appliquent à toutes les sessions complémentaires

Renvoie
AddonSession.Builder!

Compilateur pour une nouvelle instance AddonSession.

Génère
java.lang.NullPointerException

Si un ou plusieurs des arguments fournis sont nuls

notifyAddonFailureEvent

fun notifyAddonFailureEvent(
    appContext: Context!,
    failureEventType: AddonClient.AddonFailureEventType!
): Unit

Notifie Meet en cas d'échec du module complémentaire.

Paramètres
appContext: Context!

La valeur getApplicationContext de l'application qui utilise le SDK du module complémentaire Meet

failureEventType: AddonClient.AddonFailureEventType!

Le type d'échec rencontré avant, pendant ou après une session de partage en direct

Génère
java.lang.NullPointerException

Si un ou plusieurs des arguments fournis sont nuls

registerMeetingStatusListener

fun registerMeetingStatusListener(
    appContext: Context!,
    listener: MeetingStatusListener!,
    handler: Optional<Handler!>!
): Unit

Enregistre un écouteur pour être averti des changements d'état des réunions et des sessions complémentaires.

Le paramètre "Listener" enregistré sera notifié selon l'un des états suivants:

  • MEETING : une réunion active a lieu dans l'application Meet
  • ADDON_SESSION : une session complémentaire est active. Cela n'est possible que si une réunion est également active.
  • NO_MEETING : aucune réunion ni session complémentaire
Paramètres
appContext: Context!

La valeur getApplicationContext de l'application qui utilise le SDK du module complémentaire Meet

listener: MeetingStatusListener!

le MeetingStatusListener pour être informé des changements d'état

handler: Optional<Handler!>!

Optional de Handler pour une exécution asynchrone. Si aucune valeur n'est fournie, la logique générée peut s'exécuter sur le thread UI.

Génère
java.lang.IllegalStateException

Si cette méthode est appelée avant unregisterMeetingStatusListener pour un écouteur déjà enregistré

unregisterMeetingStatusListener

fun unregisterMeetingStatusListener(appContext: Context!): Unit

Annule l'enregistrement d'un écouteur actif pour les modifications de MeetingStatus.

Paramètres
appContext: Context!

La valeur getApplicationContext de l'application qui utilise le SDK du module complémentaire Meet

Génère
java.lang.IllegalStateException

Cette méthode est appelée avant registerMeetingStatusListener.