回调通知

更新时间:2025-05-29 14:58:53

本文档说明本服务如何发送关于流媒体处理任务的安全回调通知,我们提供验证机制以确保这些通知的真实性,并包含处理结果的详细信息。

通知安全机制

为保障您的安全,所有回调通知请求头中均携带Authorization字段。您可借此验证通知的合法性,确认其确系由我方服务发出。

Authorization请求头格式

<AccessKey>:URLSAFE_BASE64(HMAC_SHA1(NotifyUrlWithOutQuery + "\n" + NotifyBody, SecretKey))

其中:

  • AccessKey:账户访问密钥
  • NotifyBody:接收到的通知内容
  • SecretKey:账户安全密钥

重要提示:我们会随机选择您账户下一个有效的AK/SK密钥对生成Authorization值。请妥善管理所有AccessKey与AccessKey Secret记录,以便通过匹配请求中的AccessKey进行回调验证。


通知内容

当配置NotifyUrl后,流媒体处理服务将在任务完成后向该地址发送JSON格式的回调通知。通知内容经URL安全Base64编码,包含完整的处理任务信息。

通知要求

你的回调URL需满足:

  • 公网可访问
  • 接收通知后返回HTTP/1.1 200 OK状态码

通知字段

字段名 类型 描述
id string 流媒体处理任务的persistentId
code int 通知任务进展状态码:
• 1 - 部分任务进行中,其他已完成
• 2 - 部分任务失败,其他正在处理或已完成
• 3 - 全部任务成功
desc string 与状态码相关的详细描述
separate string 通知类型:
• 0 - 一次性通知
• 1 - 分次独立通知
inputkey string 原始文件名
inputbucket string 原始文件空间
inputfsize int 原始文件大小(字节)
items array 各操作状态信息

items数组字段

items数组中的每个项目包含:

字段名 类型 描述
cmd string 操作指令(fops)
code string 处理结果状态码:
• 2 - 处理失败
• 3 - 处理成功
costTime int 转码耗时(秒,默认0)
desc string 与状态码相关的详细描述
error string 失败详情(如果处理失败)
fsize int 处理后的文件大小(字节)
hash string 处理结果文件的哈希值
key string 处理结果的key值(格式:bucketName:key)
url string 资源的访问路径URL
duration double 转码输出的视频时长(秒)
bit_rate string 转码输出的视频码率
resolution string 转码输出的视频分辨率
detail array 输出文件为多个时,每一个数据文件的具体信息

detail数组字段

字段名 类型 描述
fsize int 处理好文件的大小(m3u8时为清单文件大小)
tssize int 输出视频格式为m3u8格式时,ts的总大小(其他格式为0)
hash string 处理结果的哈希值
key string 处理结果的key值(格式:bucketName:key)
url string 资源的访问路径URL
duration double 转码输出的视频时长(秒)
bit_rate string 转码输出的视频码率
resolution string 转码输出的视频分辨率

通知示例

{
    "id": "2c90802745ee87870145ef1430f90006",
    "code": 3,
    "desc": "operate [\"avthumb/flv\"] is finish",
    "separate": 0,
    "inputkey": "aaa.flv",
    "inputbucket": "chenqltesttwo",
    "inputfsize": 20000,
    "items": [
        {
            "cmd": "avthumb/flv",
            "code": "3",
            "costTime": 0,
            "desc": "finish",
            "error": null,
            "fsize": 20000,
            "hash": "FlWvHsc-CK6miygKCcLjCaQ5csNO",
            "key": "chenqltesttwo:aaa.flv",
            "url": "http://chenqltesttwo.com/aaa.flv",
            "duration": 198.083,
            "bit_rate": "1288025",
            "resolution": "1280X720",
            "detail": [
                {
                    "fsize": 20000,
                    "tssize": 1024,
                    "hash": "FlWvHsc-CK6miygKCcLjCaQ5csNO",
                    "key": "chenqltesttwo:aaa.flv",
                    "url": "http://chenqltesttwo.com/aaa.flv",
                    "duration": 198.083,
                    "bit_rate": "1288025",
                    "resolution": "1280X720"
                }
            ]
        }
    ]
}
本篇文档内容对您是否有帮助?
有帮助
我要反馈
提交成功!非常感谢您的反馈,我们会继续努力做到更好!