Implementare l'API Co-Watching

L'API Co-Watching gestisce l'esperienza di riunione di più 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 implementare un plug-in di Meet. Al termine di questi passaggi, puoi iniziare a utilizzare l'API Guarda insieme dal tuo 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 del tuo progetto Google Cloud.

Creare un client per la visione condivisa

Per iniziare, crea un oggetto CoWatchingClient da AddonSession.

Per creare un CoWatchingCient, chiama il metodo createCoWatchingClient() e fornisci un oggetto CoWatchingDelegate.

CoWatchingDelegate indica in che modo l'API Co-Watching aggiorna la tua app ogni volta che è disponibile un nuovo stato. È previsto che, quando viene chiamato il metodo onCoWatchingStateChanged(), la tua app applichi 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à.

Gestisci stato attuale

Quando gli utenti intraprendono un'azione nella tua applicazione, è normale che l'applicazione llame immediatamente i metodi dell'API forniti.

Devi chiamare questi metodi solo in risposta a eventi significativi. Ad esempio, non è necessario chiamarli ogni volta che l'app fa avanzare un video in riproduzione. Il CoWatchingDelegate che crei gestisce l'aggiornamento delle posizioni di riproduzione in queste circostanze.

Puoi controllare lo stato della visione condivisa utilizzando i seguenti metodi:

  • notifyBuffering(): viene chiamata quando l'app di un utente inizia il buffering a causa del buffering di un precedente switching di contenuti multimediali, ricerca di contenuti multimediali o congestione della rete.

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

  • notifyPlayoutRate(): viene chiamata quando un utente aggiorna la velocità di riproduzione su un nuovo valore (ad esempio, 1,25 volte).

  • notifyReady(): Chiama al termine del buffering e i contenuti multimediali sono pronti per essere riprodotti.

  • notifySeekToTimestamp(): viene chiamata quando un utente modifica esplicitamente la posizione di riproduzione.

  • notifySwitchToMedia(): viene chiamata ogni volta che cambiano i contenuti multimediali in riproduzione attiva. Ad esempio, l'utente seleziona un nuovo video o la riproduzione automatica avvia il video successivo.