Implementare l'API Co-Watching

L'API Co-Watching gestisce l'esperienza delle riunioni di più persone partecipanti che guardano o ascoltano contenuti nella tua app.

Questa guida spiega come implementare l'API Co-Watching.

Inizia

Per utilizzare l'API Co-Watching, devi prima creare una componente aggiuntivo di Meet. Una volta hai completato questi passaggi, puoi iniziare a usare l'API Co-Watching dal nuovo componente aggiuntivo.

Per utilizzare l'API Co-Watching, inizia ottenendo un Oggetto AddonSession, che funge da punto di accesso per le co-attività di Google Meet:

TypeScript

const session = await window.meet.addon.createAddonSession({
    cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
});

Sostituisci CLOUD_PROJECT_NUMBER con il numero del progetto di del tuo progetto Google Cloud.

Crea un client per la visione condivisa

Per iniziare, crea un CoWatchingClient dal tuo AddonSession.

Per creare un CoWatchingCient, chiama il createCoWatchingClient() e fornirà un CoWatchingDelegate .

CoWatchingDelegate è il modo in cui l'API Co-Watching aggiorna la tua app ogni volta che è disponibile un nuovo stato. Ci si aspetta che, quando onCoWatchingStateChanged() , la tua app applica immediatamente il nuovo stato.

Il seguente esempio di codice mostra come utilizzare l'API Co-Watching:

TypeScript

 const coWatchingClient = await addonSession.createCoWatchingClient({
    activityTitle: "ACTIVITY_TITLE",
    onCoWatchingStateQuery() {
      // This function should return the current state of your CoWatching activity
      return getMyApplicationCoWatchingState();
    },
    onCoWatchingStateChanged(coWatchingState: CoWatchingState) {
      // This function should apply newState to your ongoing CoWatching activity
    },
  });

Sostituisci ACTIVITY_TITLE con il titolo multimediale della tua attività.

Gestire lo stato attuale

Quando gli utenti intraprendono un'azione nella tua applicazione, si prevede che quest'ultima chiama immediatamente i metodi API forniti.

Devi chiamare questi metodi solo in risposta a eventi significativi. Per Ad esempio, non è necessario chiamarli ogni volta che l'app va avanti video. Gli handle di CoWatchingDelegate che crei e che riceveranno l'aggiornamento del playout posizione in queste circostanze.

Puoi controllare lo stato di visualizzazione condivisa utilizzando questi metodi:

  • notifyBuffering(): Chiama quando l'app di un utente avvia il buffering a causa del buffering di un contenuto multimediale precedente switch, ricerca di contenuti multimediali o congestione di rete.

  • notifyPauseState(): Chiama quando un utente mette in pausa o riattiva la riproduzione di contenuti multimediali.

  • notifyPlayoutRate(): Chiama quando un utente aggiorna la velocità di riproduzione impostando un nuovo valore (ad esempio, 1,25x).

  • notifyReady(): Chiama al termine del buffering e il contenuto multimediale è pronto per la riproduzione.

  • notifySeekToTimestamp(): Richiama quando un utente cambia esplicitamente la posizione di riproduzione.

  • notifySwitchToMedia(): Chiama ogni volta che cambia il contenuto multimediale in riproduzione. Ad esempio, l'utente seleziona un nuovo video o la riproduzione automatica avvia il video successivo.