回调接口开发指南
日期: 2022-07-28
当直播开始、结束和录制开始、结束、完成后,直播系统会通过用户在admin配置的回调信息以GET⽅式发起回调。若⽤户网站地址使⽤HTTPS协议进⾏数据安全传输时,⽤户需保证其拥有的CA证书是合法的。 ⽤户可以在admin后台指定的回调符合以下四种格式之⼀即为合法:
2、http://domain?data=****(data为⽤户⾃定义的参数)
若参数回调地址中携带有⽤户⾃定义的参数,则在进⾏回调通知时会将⽤户⾃定义的参数和下表中的参数⼀起以THQS⽅式进⾏加密。
直播开始回调参数说明:
字段名 | 说明 | 是否必须 |
userId | CC账号ID | 是 |
roomId | 直播间ID | 是 |
liveId | 直播ID | 是 |
type | 回调类型(参考回调类型说明) | 是 |
startTime | 直播开始时间, 格式为"yyyy-MM-dd HH:mm:ss" | 是 |
resolution | 分辨率:客户端设置的推流分辨率 | 否 |
framerate | 帧率:客户端设置的推流帧率 | 否 |
bitrate | 码率:开播设置的推流码率(开启桌面共享优化后,实际推流码率可能并不是设置的推流码率) | 否 |
sdkVersion | 客户端版本:当前使用的客户端版本号 | 否 |
systemVersion | 操作系统版本:讲师电脑的操作系统版本 | 否 |
ip | 讲师IP:讲师IP地址 | 否 |
deviceName | 内存:内存大小 CPU型号:讲师电脑的CPU型号、主频 | 否 |
直播结束回调参数说明:
字段名 | 说明 |
userId | CC账号ID |
roomId | 直播间ID |
liveId | 直播ID |
type | 回调类型(参考回调类型说明) |
startTime | 直播开始时间, 格式为"yyyy-MM-dd HH:mm:ss" |
endTime | 直播结束时间, 格式为"yyyy-MM-dd HH:mm:ss" |
stopStatus | 直播结束状态,10:正常结束,20:非正常结束 |
直播录制回调参数说明:
字段名 | 说明 |
userId | CC账号 |
roomId | 直播间ID |
liveId | 直播ID |
recordId | 回放ID |
type | 回调类型(参考回调类型说明) | startTime | 录制开始时间, 格式为"yyyy-MM-dd HH:mm:ss" |
endTime | 录制结束时间, 格式为"yyyy-MM-dd HH:mm:ss"(回调类型type为102或103时,会返回该参数) |
recordStatus | 回放状态,10:回放处理成功,20:回放处理失败,30:录制时间过长(回调类型type为103时,会返回该参数) |
sourcetype | 回放来源,0:录制; 1:合并; 2:迁移; 3:上传; 4:裁剪(回调类型type为103时,会返回该参数) |
recordVideoId | 回放视频ID(回放状态recordStatus为10时,会返回该参数) |
recordVideoDuration | 回放视频时长,单位:秒(回放状态recordStatus为10时,会返回该参数) |
replayUrl | 回放观看地址(回放状态recordStatus为10时,会返回该参数) |
离线回放回调参数说明:
字段名 | 说明 |
userId | CC账号 |
roomId | 直播间ID |
liveId | 直播ID |
recordId | 回放ID |
type | 回调类型 |
offlineStatus | 离线包可用状态(10:可用,20:不可用) |
offlineMd5 | 离线包MD5 |
offlineUrl | 离线包http下载地址 |
httpsOfflineUrl | 离线包https下载地址 |
回放重制回调参数说明:
字段名 | 说明 |
accountId | CC账号 |
replayCompositionId | 回放重制ID |
replayId | 回放ID |
roomId | 直播间ID |
status | 重制状态,1重制中,5重制成功,-1重制失败,其他值未知 | videoId | 视频ID(status值为5时有值) |
beginTime | 回放重制开始时间, 格式为"yyyy-MM-dd HH:mm:ss" |
duration | 时长(单位:秒,status值不是5时,duration值为0) |
title | 标题 |
liveId | 直播ID |
type | 回调类型 |
videoMd5 | 视频文件MD5值(status值为5时有值) |
伪直播资源准备结果回调参数说明:
字段名 | 说明 |
accountId | CC账号 |
roomId | 直播间ID |
status | 0:失败 2:成功 |
message | 资源准备结果信息 |
sourceId | 资源ID(回放ID或视频ID) |
sourceType | 资源类型(2:回放推流 3.点播推流) |
type | 回调类型(500) |
回调类型说明:
回调类型 | 说明 |
1 | 直播开始 |
2 | 直播结束 |
101 | 录制开始 |
102 | 录制结束 |
103 | 录制完成 |
200 | 离线回放 |
301 | 回放重制开始 |
302 | 回放重制结束 |
500 | 伪直播资源准备结果 |
用户接受回调成功返回信息:
{
"result": "OK"
}
返回内容长度限制在1024字符以内,如果返回其他内容,则回调系统会重试,重试的间隔会随着重试次数的增大而增大。若重试7次后,依然没有成功,则不再进行通知。因此,回调系统最多通知8次。这8次的通知时间距第一次的通知时间的差分别为:
[0,15s, 1m, 4m, 16m, 1h4m, 4h16m, 17h4m]