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

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

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

Начать

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

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

Машинопись

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

Создайте CoWatchingClient

Для начала создайте createCoWatchingClient из вашего AddonSession .

Чтобы создать CoWatchingCient , вызовите метод AddonSession.createCoWatchingClient и укажите CoWatchingDelegate .

CoWatchingDelegate — это то, как API совместного наблюдения обновляет ваше приложение всякий раз, когда у него появляется новое состояние. Ожидается, что при вызове метода CoWatchingDelegate.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 который вы создали выше, обрабатывает получение обновленных позиций воспроизведения в этих обстоятельствах.

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

  • CoWatchingClient.notifySwitchToMedia : вызывается при каждом изменении активно воспроизводимого мультимедиа. Например, пользователь выбирает новое видео или автоматически запускает следующее видео.
  • CoWatchingClient.notifyPauseState : вызывается, когда пользователь приостанавливает или возобновляет воспроизведение мультимедиа.
  • CoWatchingClient.notifySeekToTimestamp : вызывается, когда пользователь явно меняет позицию воспроизведения.
  • CoWatchingClient.notifyPlayoutRate : вызывается, когда пользователь обновляет скорость воспроизведения до нового значения (например, 1,25x).
  • CoWatchingClient.notifyBuffering : вызывается, когда приложение пользователя начинает буферизацию из-за буферизации из-за предыдущего переключения мультимедиа, поиска мультимедиа или перегрузки сети.
  • CoWatchingClient.notifyReady : вызывается, когда буферизация завершается и медиафайл готов к воспроизведению.