事件通知概述

视频点播支持HTTP回调和轻量消息队列(原 MNS)回调两种方式,本文为您介绍事件通知的事件类型、回调方式、回调配置、回调协议、回调内容公共参数等基本信息,以及回调判断与重试和常见问题。

事件通知简介

点播服务支持多个存储区域 ,每个区域可以单独配置事件通知的回调方式和回调地址。用户可以上传视频到不同区域的存储,视频处理完成后,点播服务会根据存储区域配置的回调方式和回调地址及时通知用户。

说明

回调body中,返回的URL均为HTTP地址,暂不支持HTTPS地址的返回,如有需要,可以参考事件通知常见问题中的方案解决。

回调方式

点播服务目前支持HTTP回调(兼容HTTPS)轻量消息队列(原MNS)回调两种方式获取事件通知:

  • HTTP回调(兼容HTTPS):

    HTTP回调是您被动接收视频点播服务事件通知的模式。您需要部署一个HTTP服务来接收回调消息,并在视频点播服务中配置回调URL;当事件产生时,点播服务端会向该URL发起HTTP POST请求,事件通知内容将通过HTTP Body送达。

  • 轻量消息队列(原 MNS)回调:

    轻量消息队列(原 MNS)回调是您主动向视频点播服务拉取接收事件通知的模式。您需要授权点播服务访问轻量消息队列(原MNS)并在消息服务中创建队列或使用已有队列,然后在视频点播服务中完成事件通知的配置;当事件产生时,点播服务会将回调内容写入该队列,您需要到消息服务中接收查看消息。在消息服务控制台中创建队列及接收消息的详细操作,请参见队列操作

HTTP回调与轻量消息队列(原MNS)回调对比

对比项

HTTP回调

轻量消息队列(原MNS)回调(推荐)

可靠性

若您的HTTP消息接收服务存在异常(崩溃或重启),则消息可能会丢失。

更为可靠,只要配置正常,消息回调几乎都能成功。

安全性

HTTP方式都可回调该地址,但可配合回调鉴权过滤非法请求,以增强安全性。

如何配置,请参见HTTP回调鉴权

由于仅授权方能读写消息队列,安全性更高。

便捷性

接入更为方便,只需简单部署消息接收服务。

需要额外开通和配置轻量消息队列(原 MNS),并且需要开发和部署消费消息的程序。

回调协议

  • HTTP回调

    • 请求:HTTP POST请求,包体内容为JSON,每一种回调的具体包体内容参见事件类型中的参考文档。

    • 应答:点播服务会忽略应答包内容。

  • 轻量消息队列(原 MNS)回调

    接收消息内容为JSON,每一种回调的具体包体内容参见事件类型中的参考文档。

回调内容公共参数

参数名称

类型

描述

EventTime

String

事件产生时间, 为UTC时间:yyyy-MM-ddTHH:mm:ssZ

EventType

String

事件类型。

VideoId

String

视频ID。

Status

String

处理状态,取值:

  • success(成功)。

  • fail(失败)。

Extend

String

在上传或提交作业接口中,指定UserData;并且若里面包含Extend字段,会在事件完成回调时透传返回用户自定义数据,最大长度512字节。

回调判断与重试

  • HTTP回调

    • 点播服务发起HTTP回调时,若回调接收服务响应的HTTP状态码为200即视为回调成功;响应状态码不为200,或是响应时间超过5秒出现超时,都视为回调失败。点播服务会忽略响应的包体内容,仅以HTTP状态码为准。

    • 若由于配置异常(比如您的回调地址错误、消息接收服务异常等),导致消息回调失败,点播服务会继续重试回调2次,即总共最多回调3次;超过后会丢弃。

  • 轻量消息队列(原 MNS)回调

    • 点播服务发起轻量消息队列(原 MNS)回调时,只要消息写入轻量消息队列(原 MNS)成功即视为回调成功,否则为失败。

    • 若由于配置异常(比如未授权点播服务访问、队列地址不是公网或队列名称不对等),导致消息写入轻量消息队列(原 MNS)失败,点播服务会继续重试2次,即总共最多回调3次;超过后会丢弃。

说明

点播服务在回调失败后会间隔1秒再次发起重试,若总共3次回调仍失败则会丢弃该消息;如要确保可靠通知,建议使用轻量消息队列(原 MNS)回调,其可靠性更高,只要配置正常,几乎能确保消息回调成功。

回调配置

HTTP和MNS回调的配置流程有所差异,均支持通过视频点播控制台和API/SDK的方式配置。详细的配置流程及使用限制请参见如何使用如何使用

事件类型

点播目前支持的事件通知类型如下:

事件类型

参考文档

FileUploadComplete

视频上传完成

ImageUploadComplete

图片上传完成

StreamTranscodeComplete

单个清晰度转码完成

TranscodeComplete

全部清晰度转码完成

SnapshotComplete

视频截图完成

DynamicImageComplete

视频动图完成

AddLiveRecordVideoComplete

直转点视频录制完成

LiveRecordVideoComposeStart

直转点录制视频合成开始

UploadByURLComplete

URL上传视频完成

UploadByURLComplete

URL上传转码流完成

CreateAuditComplete

人工审核完成

AIMediaAuditComplete

说明

对应视频点播控制台上的视频AI处理完成事件。

智能审核完成

VideoAnalysisComplete

音视频分析完成

UpdateMediaStorageClassComplete

媒资存储类型变更完成

RestoreMediaComplete

媒资解冻完成

AIMediaDNAComplete

说明

对应视频点播控制台上的视频AI处理完成事件。

视频DNA完成

AIVideoTagComplete

说明

对应视频点播控制台上的视频AI处理完成事件。

智能标签作业完成

AttachedMediaUploadComplete

辅助媒资上传完成

ProduceMediaComplete

媒体合成完成

DeleteMediaComplete

媒体删除完成

MediaBaseChangeComplete

媒资基础信息变更

SubmitMediaRefreshComplete

音视频刷新或预热完成

常见问题

使用过程中遇到问题时(例如:如何从回调中获取到HTTPS地址?如何实现多回调地址?),请参见事件通知常见问题