AddonClient

@PublicApi
public interface AddonClient



Główny interfejs do uruchamiania i zatrzymywania sesji dodatku.

Uwaga: w danym momencie aktywna może być tylko jedna sesja. W przeciwnym razie parametr ListenableFuture zwrócony przez begin zostanie rozwiązany z użyciem Sesja może zakończyć się samoczynnie (np.użytkownik opuścił spotkanie) i wywołać połączenie onSessionEnded. Można też ją zakończyć, wywołując metodę endSession.

Przykładowe zastosowanie:

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();
}

Podsumowanie

Typy zagnieżdżone

Reprezentuje zdarzenie błędu, które wystąpiło przed sesją dodatku, w jej trakcie lub po niej.

Metody publiczne

abstract AddonSession.Builder

Zwraca konstruktora dla nowej sesji dodatku.

abstract void
notifyAddonFailureEvent(
    Context appContext,
    AddonClient.AddonFailureEventType failureEventType
)

Powiadamia Meet o błędzie dodatku.

abstract void
registerMeetingStatusListener(
    Context appContext,
    MeetingStatusListener listener,
    Optional<Handler> handler
)

Rejestruje słuchacza, aby otrzymywać powiadomienia o zmianach stanu spotkań i sesji dodatkowych.

abstract void

Wyrejestrowuje aktywny detektor zmian MeetingStatus.

Metody publiczne

newSessionBuilder

abstract AddonSession.Builder newSessionBuilder(AddonSessionHandler handler)

Zwraca konstruktora dla nowej sesji dodatku. Sesja rozpocznie się dopiero po wywołaniu funkcji begin.

Aby rozpocząć sesję, najpierw dodaj do tego kreatora łańcuch elementów withCoWatching, withCoDoing lub obu naraz.

Przykładowe zastosowanie:

ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(appContext, new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withCoDoing(new AwesomeCoDoingHandler())
    .begin();
Aby skorzystać z funkcji metadanych uczestnika, wywołaj parametr MemberMetadata w łańcuchu kreatora, aby określić stan początkowy i zarejestrować słuchacza dla innych uczestników. Na przykład:
ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withParticipantMetadata(new AwesomeMetadataHandler(), myMetadataBytes)
    .begin(appContext);
Aby dowiedzieć się więcej o rozpoczynaniu sesji, wejdź na begin.
Parametry
AddonSessionHandler handler

wywołania zwrotnego dla wszystkich sesji dodatków;

Zwroty
AddonSession.Builder

monter nowej instancji AddonSession

Rzuty
java.lang.NullPointerException

jeśli dowolny z podanych argumentów ma wartość null

notifyAddonFailureEvent

abstract void notifyAddonFailureEvent(
    Context appContext,
    AddonClient.AddonFailureEventType failureEventType
)

Powiadamia Meet o błędzie dodatku.

Parametry
Context appContext

wartość getApplicationContext aplikacji, która korzysta z pakietu SDK dodatku Meet

AddonClient.AddonFailureEventType failureEventType

rodzaj błędu, który wystąpił przed sesją udostępniania na żywo, w jej trakcie lub po niej;

Rzuty
java.lang.NullPointerException

jeśli dowolny z podanych argumentów ma wartość null

registerMeetingStatusListener

abstract void registerMeetingStatusListener(
    Context appContext,
    MeetingStatusListener listener,
    Optional<Handler> handler
)

Rejestruje słuchacza, aby otrzymywać powiadomienia o zmianach stanu spotkań i sesji dodatkowych.

Zarejestrowany detektor otrzyma powiadomienie w jednym z tych stanów:

  • MEETING – masz aktywne spotkanie w aplikacji Meet
  • ADDON_SESSION – istnieje aktywna sesja dodatku. Jest to możliwe tylko wtedy, gdy masz też aktywne spotkanie.
  • NO_MEETING – brak spotkania lub sesji dodatkowej
Parametry
Context appContext

wartość getApplicationContext aplikacji, która korzysta z pakietu SDK dodatku Meet

MeetingStatusListener listener

MeetingStatusListener do otrzymywania powiadomień o zmianach stanu

Optional<Handler> handler

Optional równy Handler dla wykonania asynchronicznego. Jeśli wartość nie zostanie podana, wynikowa logika może zostać uruchomiona w wątku interfejsu.

Rzuty
java.lang.IllegalStateException

Jeśli ta metoda zostanie wywołana przed wywołaniem metody unregisterMeetingStatusListener w przypadku już zarejestrowanego detektora

unregisterMeetingStatusListener

abstract void unregisterMeetingStatusListener(Context appContext)

Wyrejestrowuje aktywny detektor zmian MeetingStatus.

Parametry
Context appContext

wartość getApplicationContext aplikacji, która korzysta z pakietu SDK dodatku Meet

Rzuty
java.lang.IllegalStateException

Jeśli ta metoda zostanie wywołana przed wywołaniem funkcji registerMeetingStatusListener.