Guía de desarrollador para Webhooks

Carles Galan API @es, Webhooks @es

Introducción

Los Webhooks te permiten obtener información sobre eventos que suceden en la plataforma a medida que suceden. Configura una URL, selecciona cuando quieres recibir información sobre un evento de tu workspace y te enviaremos notificaciones cuando la acción tenga lugar.

Para más información a cerca de Webhooks, lea PBWiki Webhooks page.

Puedes probar nuestros Webhooks sin tener que escribir scripts mediante la herramienta RequestBin tool. Es una utilidad excelente que te permitirá ver la información que se envía con cada notificación.

Como configurar los Webhooks

Puedes configurar los Webhooks en la consola de tus Worskpaces. Puedes crear webhooks a dos niveles: A nivel de Workspace y a nivel de Evento.

Como crear un webhook a nivel de Workspace

Los Webhooks a nivel de workspace consisten en una colección de eventos que se disparan cuando ciertas acciones se realizan en en un Workspace.

  1. Entra en la consola de tu Workspace
  2. Ves a Settings
  3. Haz click en el apartado Worskpace del menú lateral para desplegar las opciones
  4. Haz click en Webhooks
  5. Haz click en el botón “Añadir Webhook”

Como crear un webhook a nivel de Evento

Los Webhooks a nivel de evento, al contrario que los de Workspace, disparan notificaciones cuando se realiza una acción en un determinado Evento

  1. Entra en la consola de tu Workspace
  2. Crea un nuevo evento o edita un evento ya existente
  3. Abre la pestaña Integración
  4. Despliega el apartado Webhooks
  5. Haz click en “Añadir Webhook”

Mapping

La prestación de Mapping te permite indicar qué nombres de variables quieres que te lleguen a tu servicio. Esto es útil cuando utilizas un servicio genérico para diferentes propósitos.

Webhooks types

Webcastuidio enviará un objecto que representa la entidad que ha sido afectada por la acción que ha disparado el Webhook.

Estos son los posibles typos de objecto que pueden ser enviados:

Event-type

Describe la entidad Evento

PropertyTypeDescription
event_idNumberEvent ID
account_idNumberWorkspace ID
event_nameStringTítulo del Evento
event_descriptionStringDescripción del Evento
event_statusStringCategory de estado. Valores possibles: “live_pending” (representado con el color verde en la consola), “od_pending” (azul), “od_publisehd” (naranja).
event_start_dateStringFecha de inicio del Evento. 
event_finish_dateStringFecha de fin del Evento.
event_languagesArray of ObjectsLista de los idiomas disponibles para este evento
  idNumberLanguage ID
  nameStringNombre corto del idioma (e.g. ‘es’, ‘ca’)
  labelStringNombre largo del idioma (e.g. ‘Español’, ‘Català’)

Session-type

Describe la entidad Session. Una Session representa una sesión de webcast dentro de un Evento.

PropertyTypeDescription
session_idNumberEvent session ID
event_idNumberEvent ID
account_idNumberWorkspace ID
session_nameStringNombre de la sesión
session_start_datetimeStringFecha y hora de inicio de la sesión
session_finish_datetimeStringFecha y hora del final de la sesión
template_idNumberPlayer template ID
app_versionStringVersión del player
session_live_statusStringEstado de la sesión para el directo:

  • off: La sesión no está publicada en directo
  • live_publishing: La sesión ya está lista para ser publicada pero el acceso aún no se ha abierto
  • live_open: La sesión está publicada en directo y disponible para la audiencia
session_od_statusArray of ObjectsLista de los idiomas producidos ondemand y su estado de publicación. Abajo la estructura de cada objecto de la lista.

NOTA: Si un idioma de los disponibles no aparece en esta lista quiere decir que aún no se ha producido su versión grabada.

  lang_idNumberLanguage ID
  nameStringLanguage short code
  statusStringValores posibles

  • pending: Ya se ha producido la versión grabada pero no se ha publicado
  • published: La versión grabada ya está disponible para este idioma

Acciones

Acciones de Evento

Cuando una entidad Evento sufre cambios relevantes las siguintes acciones serán notificadas:

ws.event.create

Se dispara cuando un evento ha sido creado en un workspace. Sólo disponible para los Webhooks a nivel de Workspace.

ws.event.update

Se dispara cuando un evento sufre cambios en sus parámetros básicos: Título, descripción y fechas.

ws.event.access_modes_update

Se dispara cuando se añade o quita un sistema de acceso

Acciones de Sesión

Acciones que se disparan cuando una sesión es creada o sufre cambios relevantes.

ws.session.create

Se dispara cuando una sesión se ha creado.

ws.session.update

Se dispara cuando un parámetro de configuración ha sido modificado en una sesión. Por ejemplo, se ha modificado la fecha y hora de inicio o final.

ws.session.status_update

Se dispara cuando una sesión ha cambiado de estado tanto para Live como para Od. Esta acción se puede utilizar para ser notificado cuando una sesión ha pasado a estar publicada.