Внедрение API совместного просмотра

API совместного просмотра управляет взаимодействием нескольких участников, которые смотрят или слушают контент в вашем приложении.

В этом руководстве объясняется, как реализовать API совместного просмотра.

Начать

Чтобы использовать API совместного просмотра, сначала необходимо развернуть надстройку Meet . Выполнив эти шаги, вы можете начать использовать API совместного просмотра в новом дополнении.

Чтобы использовать API совместного просмотра, начните с получения объекта AddonSession , который служит точкой входа для совместной деятельности Google Meet:

Машинопись

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

Замените CLOUD_PROJECT_NUMBER на номер вашего проекта Google Cloud.

Создайте клиент совместного просмотра

Для начала создайте объект CoWatchingClient из вашего AddonSession .

Чтобы создать CoWatchingCient , вызовите метод createCoWatchingClient() и предоставьте объект CoWatchingDelegate .

CoWatchingDelegate — это то, как API совместного просмотра обновляет ваше приложение всякий раз, когда у него появляется новое доступное состояние. Ожидается, что при вызове метода onCoWatchingStateChanged() ваше приложение немедленно применит новое состояние.

В следующем примере кода показано, как использовать API совместного просмотра:

Машинопись

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

Замените ACTIVITY_TITLE на заголовок вашего мероприятия.

Управление текущим состоянием

Когда пользователи выполняют какие-либо действия в вашем приложении, ожидается, что ваше приложение немедленно вызовет предоставленные методы API.

Эти методы следует вызывать только в ответ на значимые события. Например, вам не нужно вызывать их каждый раз, когда ваше приложение запускает воспроизводимое видео. Создаваемый вами CoWatchingDelegate обрабатывает получение обновленных позиций воспроизведения в этих обстоятельствах.

Вы можете контролировать состояние совместного просмотра, используя следующие методы:

  • notifyBuffering() : вызывается, когда приложение пользователя начинает буферизацию из-за буферизации из-за предыдущего переключения мультимедиа, поиска мультимедиа или перегрузки сети.

  • notifyPauseState() : вызывается, когда пользователь приостанавливает или возобновляет воспроизведение мультимедиа.

  • notifyPlayoutRate() : вызывается, когда пользователь обновляет скорость воспроизведения до нового значения (например, 1,25x).

  • notifyReady() : вызывается, когда буферизация завершается и медиафайл готов к воспроизведению.

  • notifySeekToTimestamp() : вызывается, когда пользователь явно меняет позицию воспроизведения.

  • notifySwitchToMedia() : вызывается всякий раз, когда изменяется активно воспроизводимый медиафайл. Например, пользователь выбирает новое видео или автоматически запускает следующее видео.