Notificaciones de la API de CMS

En este tema, aprenderá sobre CMS API notificaciones El CMS API proporciona notificaciones de cambios en los videos de su cuenta, ya sea que los haya realizado un usuario de la cuenta o el sistema Video Cloud.

Resumen

Puede recibir notificaciones cuando video-change los eventos ocurren en su biblioteca de videos. Las notificaciones se enviarán a la URL que especifique, que debe apuntar a una aplicación capaz de manejar HTTP POST peticiones.

Autenticación

Como todas las solicitudes a la API de CMS, las solicitudes para configurar o enumerar suscripciones de notificación deben autenticarse mediante un token de acceso. Las credenciales de cliente utilizadas para obtener el token de acceso deben tener permisos para video-cloud/notifications/all (CMS->Notifications si usa el Interfaz de usuario de Studio para crear las credenciales).

Configuración

Para crear una nueva suscripción, envíe un POST solicitud de https://cms.api.brightcove.com/v1/accounts/{account_id}/subscriptions con un cuerpo de solicitud que incluye el extremo al que desea que se entreguen las notificaciones y video-change o master-video-change como el elemento único en una matriz de eventos. Puede especificar hasta 10 puntos finales por evento para recibir notificaciones.

Los eventos disponibles para video-change son para tu videoteca, y ahora, eventos para master-video-change son para cambios en los activos de un video maestro de entrega dinámica que eventualmente se reflejará en su video compartido.

Para video-change eventos

{
  "endpoint":"https://solutions.brightcove.com/bcls/di-api/di-callbacks.php",
  "events":["video-change"]
}

Para master-video-change eventos

{
  "endpoint":"https://solutions.brightcove.com/bcls/di-api/di-callbacks.php",
  "events":["master-video-change"]
}

Las notificaciones se envían en formato JSON. Aquí hay un ejemplo para video-change eventos:

{
  "timestamp":1423840514446, 
  "account_id":"775205503001", 
  "event":"video-change", 
  "video":"4020894387001", 
  "version":26,
  “action”:”UPDATE”,
  “updated_by”:{ "email": "string", "id": "string", "type": "user" }
}

Y un ejemplo para master-video-change Se ve como esto:

{
  "timestamp":1423840514446,
  "account_id":"775205503001",
  "event":"video-change",
  "video":"4020894387001", 
  "version":26, 
  "action":"UPDATE", 
  "updated_by":{ "email": "string", "id": "string", "type": "user" },
  "master_account_id":"784205904003",
  "master_video_id":"6200985429005"
}

Campos de notificación

Artículo Descripción
timestamp hora en que ocurrió el evento en Epoch milisegundos
account_id la Video Cloud ID de la cuenta
master_account_id el Only for master-video-change events: The id of the master video who made the update in the assets shared with the affiliate video.
master_video_id el Only for master-video-change events: The id of the Video Cloud master account for the master video.
event el tipo de evento - actualmente esto siempre será video-change
video la identificación del video
version la versión del video - cada conjunto de eventos de cambio incrementa la versión del video - por ejemplo, la creación de un nuevo conjunto de representaciones constituiría un conjunto de eventos de cambio
action[1-1] la acción que se realizó - una de las siguientes:
  • UPDATE- un activo fue actualizado
  • CREATE- se creó un activo
  • TRIGGERED_MANUAL- una aplicación interna de Brightcove activó una notificación
  • DELETE- se eliminó un activo
  • updated_by[1-1] un objeto que contiene información sobre quién realizó la acción, si está disponible; las propiedades del objeto son:
  • email- la dirección de correo electrónico del usuario
  • id- la identificación del sistema Video Cloud para el usuario
  • type- el tipo de actualización:
    • user- un usuario en Studio
    • api-key- un usuario a través de la API
    • internal- un sistema o usuario de Brightcove
  • Las solicitudes para crear una suscripción recibirán un HTTP 422 respuesta de error para las siguientes condiciones:

    • La endpoint o events falta el campo en el cuerpo de la solicitud
    • La events el valor del campo no es una lista (matriz)
    • La suscripción definida ya existe
    • Ya tienes 10 suscripciones a este evento

    Fallas de notificación

    El sistema de notificación trata cualquier 4xx o 5xx volver del servidor del cliente como una falla que se puede reintentar. Las devoluciones de llamada fallidas se reintentarán hasta 20 veces, con un retraso que aumenta exponencialmente entre las devoluciones de llamada posteriores. Los primeros reintentos ocurrirán minutos después del intento inicial de devolución de llamada. Si la devolución de llamada continúa fallando y llegamos al vigésimo reintento, la demora del reintento será de unos días.

    Cortafuegos

    En caso de que su organización tenga una política estricta con respecto a las fuentes de tráfico entrante a través de su firewall, permitimos las direcciones IP de AWS us-east-1 / Virginia. Esto está sujeto a cambios, por lo que todas las direcciones IP de AWS deben incluirse en la lista blanca. Ver https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html para más información.

    Punto final para suscripciones a notificaciones

            /accounts/{account_id}/subscriptions
            
            

    Obtenga una lista de sus suscripciones

    Para obtener una lista de todas sus suscripciones, envíe un GET solicitud al extremo de suscripciones:.

    /accounts/{account_id}/subscriptions

    Obtenga o elimine una sola suscripción

    Utilice el siguiente punto final para obtener o eliminar una única suscripción:

    Punto final

    /accounts/{account_id}/subscriptions/{subscription_id}

    A GET solicitud recuperará la suscripción. A DELETE solicitud eliminará la suscripción. No puede actualizar una suscripción en este momento. Si desea modificar una suscripción, deberá eliminarla y crear una nueva.

    ¿Qué activa las notificaciones?

    video-change los eventos se desencadenan por cualquier cambio en los metadatos del video. Esto incluye cualquier cambio en el video realizado en Studio o mediante un CMS API método de escritura. También hay eventos del sistema que activarán video-change eventos.

    Los cambios que desencadenarán un evento incluyen:

    • Se crea un video
    • Comienza la ingestión de video o archivo de activos
    • Se completó la ingestión de video o archivo de activos
    • La codificación de una nueva interpretación termina
    • Se crea una imagen de póster
    • Se crea una imagen en miniatura
    • Un video está activado o desactivado
    • Se borra un video
    • Se cambian los metadatos del video (por el sistema o un usuario)
    • master-video-change los eventos se activan mediante actualizaciones en los activos de un video maestro, lo que hace que solo estén disponibles para compartir.

      Los cambios que desencadenarán este evento incluyen:

      • Los activos ingeridos se agregan al video maestro
      • Los activos ingeridos se reemplazan/retranscodifican en el video maestro

    Notas

    Retranscodificar un video no activará un video-change evento a menos que el conjunto de copias resultante sea diferente.

    Hay eventos del sistema que ocurren después de que se elimina un video, por lo que recibirá notificaciones sobre un video después de eliminarlo.

    Que sera no desencadenar un video-change El evento es un cambio en un elemento de video que no cambia los metadatos del video. Por ejemplo, si reemplaza un archivo de pista de texto remoto o una imagen, pero la URL grabada en los metadatos del video sigue siendo la misma, no video-change ocurrirá el evento y no se enviará ninguna notificación.

    La eliminación de activos en un video maestro no activará una master-video-change evento. Cuando se eliminan activos en un video, es porque el video se está eliminando y el uso compartido ya maneja el proceso de eliminación de videos afiliados.