Capítulo 12 GET POST

publishRecordings – Publicar/Despublicar

El endpoint publishRecordings alterna la visibilidad de una o varias grabaciones. Puedes publicar grabaciones para hacerlas accesibles mediante su URL de reproducción, o despublicarlas para ocultarlas de los espectadores mientras se conservan los archivos en el servidor.

Endpoint

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

Se admiten los métodos GET y POST. Al usar POST, envía los parámetros como application/x-www-form-urlencoded en el cuerpo de la solicitud.

Parámetros

Parámetro Tipo Descripción
recordID String Obligatorio. Una lista de IDs de grabación separada por comas para publicar o despublicar. Puedes especificar uno o más IDs en una sola solicitud.
publish Boolean Obligatorio. Establécelo en true para publicar las grabaciones (hacerlas accesibles), o en false para despublicarlas (ocultarlas de los espectadores).

Ejemplo de solicitud

Publicar una sola grabación

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

Despublicar varias grabaciones

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

Solicitud POST con 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"

Respuesta de ejemplo

Éxito

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

Error — Grabación no encontrada

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

Respuestas de error

messageKey Descripción
checksumError El checksum es inválido. Verifica que estás usando el secreto compartido correcto y que el algoritmo de checksum coincide con la configuración del servidor.
missingParamRecordID No se proporcionó el parámetro requerido recordID.
missingParamPublish No se proporcionó el parámetro requerido publish.
notFound No se encontró ninguna grabación que coincida con alguno de los IDs de grabación especificados.

Consejos

Usa el endpoint getRecordings para recuperar el estado actual de publicación de tus grabaciones antes de cambiar su visibilidad. El campo published en la respuesta indica si cada grabación es actualmente visible.

  • Una grabación publicada es accesible mediante su URL de reproducción. Una grabación no publicada permanece en el servidor, pero no puede ser accedida por los espectadores.
  • Esta acción es totalmente reversible: las grabaciones pueden publicarse y despublicarse cualquier cantidad de veces.
  • Puedes procesar varias grabaciones por lotes pasando una lista de IDs de grabación separada por comas en una sola solicitud.
  • Si quieres eliminar permanentemente una grabación en lugar de simplemente ocultarla, usa el endpoint deleteRecordings.

Cuando pases varios IDs de grabación y al menos uno de ellos sea válido, la llamada devolverá SUCCESS. Solo si ninguno de los IDs proporcionados coincide con una grabación existente, el servidor devolverá FAILED con el error notFound.

Preguntas frecuentes

Despublicar una grabación la oculta de los espectadores, pero mantiene los archivos de grabación en el servidor. Puedes volver a publicarla en cualquier momento. Eliminar una grabación quita permanentemente los archivos del servidor y no se puede deshacer.

Sí. Pasa una lista de IDs de grabación separada por comas en el parámetro recordID. Todas las grabaciones especificadas se establecerán con el mismo estado de publicación en una sola solicitud.

Si al menos uno de los IDs de grabación proporcionados es válido, la llamada devuelve SUCCESS y aplica el cambio a todas las grabaciones válidas. El servidor solo devuelve FAILED con notFound si ninguno de los IDs coincide con una grabación existente.

Usa el endpoint getRecordings e inspecciona el campo published en la respuesta XML. Estará establecido en true para las grabaciones publicadas y en false para las no publicadas.

Despublicar una grabación hace que su URL de reproducción sea inaccesible. Los usuarios que estén viendo actualmente la grabación pueden experimentar una interrupción según cómo el cliente de reproducción gestione el cambio.