LiveBroadcasts: transition

Изменяет статус трансляции на YouTube и запускает процессы, связанные с новым статусом. Например, когда вы меняете статус трансляции на testing, YouTube начинает передавать видео в контрольный поток этой трансляции. Перед вызовом этого метода убедитесь, что свойство status.streamStatus для потока, связанного с трансляцией, имеет значение active.

Примеры использования

Запрос

HTTP-запрос

POST https://www.googleapis.com/youtube/v3/liveBroadcasts/transition

Авторизация

Для этого запроса требуется авторизация по крайней мере с одной из следующих областей действия. Подробнее об аутентификации и авторизации читайте в статье Реализация аутентификации OAuth 2.0.

Область действия
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

Параметры

В таблице ниже перечислены параметры, которые поддерживает этот запрос. Все перечисленные параметры являются параметрами запроса.

Параметры
Обязательные параметры
broadcastStatus string
Параметр broadcastStatus определяет состояние, в которое переходит трансляция. Обратите внимание, что для перехода трансляции в статус testing или live параметр status.streamStatus должен иметь значение active для стрима, с которым связана трансляция.

Допустимые значения:
  • complete – трансляция завершена. YouTube прекращает передачу видео.
  • live – трансляция видна аудитории. YouTube передает видео на монитор трансляции и в трансляцию.
  • testing – начать тестирование трансляции. YouTube передает видео на монитор трансляции. Обратите внимание, что перевести трансляцию в состояние testing можно только в том случае, если для ее свойства contentDetails.monitorStream.enableMonitorStream задано значение true.
id string
Параметр id указывает уникальный идентификатор трансляции, статус которой меняется.
part string
Параметр part задает список свойств ресурса liveBroadcast, разделенных запятыми, которые будут включены в ответ API. В качестве значения параметра можно указать следующие названия part: id, snippet, contentDetails и status.
Необязательные параметры
onBehalfOfContentOwner string
Этот параметр можно использовать только в авторизованном запросе.

Примечание. Этот параметр предназначен исключительно для партнеров YouTube по контенту.

Параметр onBehalfOfContentOwner указывает, что учетные данные авторизации запроса идентифицируют пользователя системы управления контентом YouTube, который действует от имени владельца контента, указанного в значении параметра. Этот параметр предназначен для партнеров YouTube, которые владеют несколькими каналами и управляют ими. Владельцы контента могут пройти аутентификацию один раз и получить доступ к данным всех своих видео и каналов. Аккаунт CMS, с помощью которого пользователь проходит аутентификацию, должен быть связан с указанным владельцем контента YouTube.
onBehalfOfContentOwnerChannel string
Этот параметр можно использовать только в авторизованном запросе.

Примечание. Этот параметр предназначен исключительно для партнеров YouTube.

Параметр onBehalfOfContentOwnerChannel указывает идентификатор канала YouTube, на который добавляется видео. Этот параметр обязателен, если в запросе указано значение параметра onBehalfOfContentOwner, и может использоваться только вместе с ним. Кроме того, запрос должен быть авторизован с помощью аккаунта CMS, связанного с владельцем контента, который указан в параметре onBehalfOfContentOwner. Канал, указанный в значении параметра onBehalfOfContentOwnerChannel, должен быть связан с владельцем контента, указанным в параметре onBehalfOfContentOwner.

Этот параметр предназначен для партнеров YouTube, которые владеют и управляют множеством разных каналов YouTube. Владельцы контента могут один раз пройти аутентификацию и выполнять действия от имени канала, указанного в значении параметра, не предоставляя учетные данные для каждого отдельного канала.

Тело запроса

При вызове этого метода не указывайте тело запроса.

Ответ

В случае успеха этот метод возвращает в теле ответа ресурс liveBroadcast.

Ошибки

В таблице ниже перечислены сообщения об ошибках, которые API может возвращать в ответ на вызов этого метода. Подробнее об ошибках YouTube Live Streaming API…

Тип ошибки Сведения об ошибке Описание
backendError errorExecutingTransition При изменении статуса трансляции произошла ошибка.
forbidden (403) errorStreamInactive Запрошенный переход не разрешен, если поток, связанный с трансляцией, неактивен.
forbidden (403) invalidTransition Невозможно изменить текущий статус прямой трансляции на запрашиваемый.
forbidden (403) redundantTransition Прямая трансляция уже имеет запрошенный статус или находится в процессе его получения.
insufficientPermissions insufficientLivePermissions У запроса нет разрешения на переход к прямой трансляции.
insufficientPermissions livePermissionBlocked Пользователь, авторизовавший запрос, в настоящее время не может проводить трансляции на YouTube. Чтобы узнать, почему пользователь не может провести трансляцию, перейдите в настройки его канала и откройте раздел Доступность функций.
insufficientPermissions liveStreamingNotEnabled У пользователя, который авторизовал запрос, нет разрешения на проведение трансляций на YouTube. Подробнее о доступности функций…
notFound (404) liveBroadcastNotFound Трансляция, указанная в параметре id, не существует.
rateLimitExceeded (403) userRequestsExceedRateLimit Пользователь отправил слишком много запросов за определенный период времени.
rateLimitExceeded (403) concurrentBroadcastsExceedLimit На канале уже проводится максимально возможное количество одновременных прямых трансляций. Чтобы начать новую трансляцию, нужно остановить одну или несколько уже идущих.
rateLimitExceeded (403) sharedIngestionBroadcastsExceedLimit На канале достигнуто максимальное количество прямых трансляций с одним источником. Чтобы начать трансляцию, необходимо остановить одну или несколько из них.
required (400) idRequired Обязательный параметр id должен идентифицировать трансляцию, статус которой вы хотите изменить.
required (400) statusRequired В запросе к API необходимо указать значение параметра status.

Попробовать

Используйте APIs Explorer, чтобы вызвать этот API и посмотреть запрос к API и ответ.