Внедрение 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() : вызывается при каждом изменении воспроизводимого медиафайла. Например, пользователь выбирает новое видео или функция автовоспроизведения начинает следующее видео.