Notificaciones de API de ingesta dinámica
Puede especificar una o más URL de devolución de llamada para recibir notificaciones de los resultados del proceso de ingesta. Las URL que especifique deben ser para aplicaciones que puedan aceptar solicitudes POST. Las notificaciones se enviarán en formato JSON.
Configuración
He aquí un ejemplo.
- Usuario con ID de publicación 57838016001
- Quiere usar Dynamic Ingest para cargar un archivo de video fuente ubicado en https://s3.amazonaws.com/bucket/mysourcevideo.mp4
- Quiere cargar un título existente en el catálogo con la identificación de video 5199670523001
- Uso del perfil estático estándar multiplataforma
- Quiere recibir devoluciones de llamada en dos puntos finales ubicados en https://host1/path1 y https://host2/path2 respectivamente
La solicitud de DI se vería así:
Solicitud POST
Cuerpo de la solicitud
{
"master": {
"url": "https://s3.amazonaws.com/bucket/mysourcevideo.mp4"
},
"profile": "multi-platform-standard-static",
"callbacks": ["https://host1/path1”, “https://host2/path2”]
}
Notificación de muestra
Las notificaciones se envían como solicitudes POST con la notificación en el cuerpo de la solicitud como JSON [1] . A continuación, se muestra un conjunto completo de notificaciones de un trabajo de ingesta de video típico:
{
"entity": "default\/audio192",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/audio192",
"language": "en",
"variant": "main",
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/audio64",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/audio64",
"language": "en",
"variant": "main",
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/audio96",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/audio96",
"language": "en",
"variant": "main",
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/audio128",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/audio128",
"language": "en",
"variant": "main",
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "5660367449001",
"entityType": "DIGITAL_MASTER",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/video450",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/video450",
"bitrate": 451,
"width": 480,
"height": 270,
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "5660367449001",
"entityType": "TITLE",
"version": "1",
"action": "PUBLISH",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "thumbnail",
"entityType": "ASSET",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "poster",
"entityType": "ASSET",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/video900",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/video900",
"bitrate": 901,
"width": 640,
"height": 360,
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/video700",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/video700",
"bitrate": 700,
"width": 640,
"height": 360,
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/video1200",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/video1200",
"bitrate": 1204,
"width": 960,
"height": 540,
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/video1700",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/video1700",
"bitrate": 1703,
"width": 960,
"height": 540,
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/video3500",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/video3500",
"bitrate": 3498,
"width": 1920,
"height": 1080,
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/video2000",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/video2000",
"bitrate": 2000,
"width": 1280,
"height": 720,
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "default\/video3800",
"entityType": "DYNAMIC_RENDITION",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"dynamicRenditionId": "default\/video3800",
"bitrate": 3804,
"width": 1920,
"height": 1080,
"accountId": "57838016001",
"status": "SUCCESS"
}
{
"entity": "5660367449001",
"entityType": "TITLE",
"version": "1",
"action": "CREATE",
"jobId": "d3ef8751-2b88-4141-95d5-83f0393aca07",
"videoId": "5660367449001",
"accountId": "57838016001",
"status": "SUCCESS"
}
Campos de notificación
Artículo | Descripción |
---|---|
status |
estarán FAILED si la ingesta o la creación de una versión no se realizó correctamente, SUCCESS si la solicitud tuvo éxito |
accountId |
la identificación de la cuenta |
videoId |
la identificación del video |
jobId |
el ID de trabajo para la solicitud de ingesta dinámica |
entity |
ya sea el nombre de la entidad o el ID de Video Cloud del video para el TÍTULO |
entityType |
el tipo de activo sobre el que se informa, por ejemplo: TITLE (un video), DIGITAL_MASTER, ASSET (una interpretación, un archivo de subtítulos o una imagen) |
bitrate |
tasa de bits para una interpretación |
width |
ancho de fotograma para una interpretación |
height |
altura del marco para una interpretación |
errorMessage |
una explicación de por qué la ingestión falló si lo hizo |
version |
una cadena siempre igual a "1" |
action |
la acción que ocurrió - por ejemplo, CREAR |
Interpretación de notificaciones
Una notificación que contiene "action": "CREATE"
y "status": "SUCCESS"
indica la finalización de un proceso.
- Si el
entityType
esTITLE
, entonces se completa el procesamiento de un video ingerido. - Para
entityType: TITLE
,action: PUBLISH
se refiere al tiempo que el video está activado. Para los videos que están inmediatamente activos, será aproximadamente el mismo tiempo que elCREATE
hora. - Si el
entityType
esASSET
,DYNAMIC_RENDITION
oDIGITAL_MASTER
, entonces se ha agregado correctamente a su video una representación, una imagen, un manifiesto, un archivo WebVTT o un maestro digital.
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.