Глава 12 GET POST

publishRecordings – Опубликовать/Снять с публикации

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

Конечная точка

GET/POST https://api-guide.bbbserver.com/bigbluebutton/api/publishRecordings?<parameter>&checksum=replace-with-checksum

Поддерживаются методы GET и POST. При использовании POST отправляйте параметры как application/x-www-form-urlencoded в теле запроса.

Параметры

Параметр Тип Описание
recordID String Обязательно. Список ID записей, разделённых запятыми, которые нужно опубликовать или снять с публикации. В одном запросе можно указать один или несколько ID.
publish Boolean Обязательно. Установите значение true, чтобы опубликовать записи (сделать их доступными), или false, чтобы снять их с публикации (скрыть от зрителей).

Пример запроса

Опубликовать одну запись

GET https://api-guide.bbbserver.com/bigbluebutton/api/publishRecordings
    ?recordID=replace-with-recording-id
  &publish=true
    &checksum=replace-with-checksum

Снять с публикации несколько записей

GET https://api-guide.bbbserver.com/bigbluebutton/api/publishRecordings
    ?recordID=replace-with-recording-id-1,replace-with-recording-id-2
  &publish=false
    &checksum=replace-with-checksum

Запрос POST с cURL

curl --request POST \
    --url "https://api-guide.bbbserver.com/bigbluebutton/api/publishRecordings" \
  --header "Content-Type: application/x-www-form-urlencoded" \
    --data "recordID=replace-with-recording-id&publish=true&checksum=replace-with-checksum"

Пример ответа

Успех

<response>
  <returncode>SUCCESS</returncode>
  <published>true</published>
</response>

Ошибка — запись не найдена

<response>
  <returncode>FAILED</returncode>
  <messageKey>notFound</messageKey>
  <message>We could not find recordings.</message>
</response>

Ответы с ошибками

messageKey Описание
checksumError Значение checksum недействительно. Убедитесь, что вы используете правильный общий секрет и что алгоритм checksum соответствует конфигурации сервера.
missingParamRecordID Обязательный параметр recordID не был передан.
missingParamPublish Обязательный параметр publish не был передан.
notFound Не найдено ни одной записи, соответствующей указанным ID записей.

Советы

Используйте эндпоинт getRecordings, чтобы получить текущее состояние публикации ваших записей перед переключением их видимости. Поле published в ответе показывает, видима ли сейчас каждая запись.

  • Опубликованная запись доступна по её URL воспроизведения. Неопубликованная запись остаётся на сервере, но недоступна для зрителей.
  • Это действие полностью обратимо — записи можно публиковать и снимать с публикации неограниченное количество раз.
  • Вы можете пакетно обработать несколько записей, передав список ID записей, разделённых запятыми, в одном запросе.
  • Если вы хотите навсегда удалить запись, а не просто скрыть её, используйте эндпоинт deleteRecordings.

Если вы передаёте несколько ID записей и хотя бы один из них действителен, вызов вернёт SUCCESS. Только если ни один из переданных ID не соответствует существующей записи, сервер вернёт FAILED с ошибкой notFound.

Часто задаваемые вопросы

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

Да. Передайте в параметре recordID список ID записей, разделённых запятыми. Всем указанным записям будет задано одно и то же состояние публикации в рамках одного запроса.

Если хотя бы один из переданных ID записей действителен, вызов вернёт SUCCESS и применит изменение ко всем действительным записям. Сервер вернёт FAILED с notFound только если ни один из ID не соответствует существующей записи.

Используйте эндпоинт getRecordings и проверьте поле published в XML-ответе. Для опубликованных записей оно будет установлено в true, а для неопубликованных — в false.

Снятие записи с публикации делает её URL воспроизведения недоступным. Пользователи, которые в данный момент просматривают запись, могут столкнуться с прерыванием в зависимости от того, как клиент воспроизведения обрабатывает это изменение.
Руководство по API BigBlueButton