Co-Watching API implementieren

Mit der Co-Watching API lassen sich Videokonferenzen mehrerer Personen, die sich Inhalte Ihrer App ansehen oder anhören.

In diesem Leitfaden wird erläutert, wie die Co-Watching API implementiert wird.

Erste Schritte

Um die Co-Watching API zu verwenden, musst du zuerst eine Meet-Add-on. Einmal Wenn du diese Schritte abgeschlossen hast, kannst du die Co-Watching API verwenden aus dem neuen Add-on aus.

Um die Co-Watching API zu verwenden, musst du zuerst eine Objekt AddonSession das als Einstiegspunkt für gemeinsame Google Meet-Aktivitäten dient:

TypeScript

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

Ersetzen Sie CLOUD_PROJECT_NUMBER durch die Projektnummer von Ihr Google Cloud-Projekt.

Client für das gemeinsame Ansehen erstellen

Erstellen Sie zunächst ein CoWatchingClient von AddonSession entfernt.

Rufen Sie zum Erstellen eines CoWatchingCient die Methode createCoWatchingClient() und stellen eine CoWatchingDelegate -Objekt enthält.

Mit CoWatchingDelegate wird deine App durch die Co-Watching API aktualisiert wenn ein neuer Status verfügbar ist. Es ist zu erwarten, dass der onCoWatchingStateChanged() aufgerufen wird, wendet Ihre App sofort den neuen Status an.

Das folgende Codebeispiel zeigt, wie die Co-Watching API verwendet wird:

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

Ersetzen Sie ACTIVITY_TITLE durch den Titel des Mediums Ihrer Aktivität.

Aktuellen Status verwalten

Wenn Nutzer in Ihrer App Aktionen durchführen, wird erwartet, dass Ihre App ruft die bereitgestellten API-Methoden sofort auf.

Sie sollten diese Methoden nur als Reaktion auf wichtige Ereignisse aufrufen. Sie müssen sie beispielsweise nicht jedes Mal aufrufen, wenn in Ihrer App ein Video vor- oder zurückgespult wird. Die von dir erstellten CoWatchingDelegate-Aliasse erhalten eine aktualisierte Playout-Version Positionen unter diesen Umständen.

Mit den folgenden Methoden kannst du den Status der gemeinsamen Wiedergabe steuern:

  • notifyBuffering(): Aufruf, wenn die App eines Nutzers aufgrund eines vorigen Mediums mit der Zwischenspeicherung beginnt Wechsel, Mediensuche oder Netzwerküberlastung.

  • notifyPauseState(): Wird aufgerufen, wenn ein Nutzer die Wiedergabe von Medien pausiert oder fortsetzt.

  • notifyPlayoutRate(): Rufen Sie auf, wenn ein Nutzer die Wiedergabegeschwindigkeit auf einen neuen Wert ändert (z. B. 1,25x).

  • notifyReady(): Wird aufgerufen, wenn die Pufferung abgeschlossen ist und die Medien jetzt wiedergegeben werden können.

  • notifySeekToTimestamp(): Aufruf, wenn ein Nutzer die Wiedergabeposition explizit ändert.

  • notifySwitchToMedia(): Rufen Sie immer dann auf, wenn sich die aktiv wiedergegebenen Medien ändern. Beispiel: Die Nutzenden ein neues Video auswählt oder bei der automatischen Wiedergabe das nächste Video gestartet wird.