跳转至

录制状态回调信息

录像状态同步地址配置

在开发者后台云端录像开通配置页面,可以填写录像状态回调服务器的地址; URL 格式为 http://{ip:port}/;目前暂不支持https。 如果您部署的录像服务经过了负载转换,则填写对外暴露的负载 URL,并确保录像服务能收到请求。配置后一般 30 分钟后生效。

回调接口

  • http请求头
方法

HTTP Post

URL

<用户传入的url>

Content-Type:application/json

Content-Length:<数据长度>

  • 公有字段说明
字段名称 类型 说明
timestamp number 时间戳 精确到毫秒
type number 日志类型:1 录像开始;2 录像切片;3 录像结束;4 文件上传
appKey string 用户的appKey
recordId string 录像ID 整个录像中保证唯一性
sessionId string 会话ID
roomId string 房间ID
mod Int 录像模式:0:single模式 全录;1:single模式 仅录视频;2:single模式 仅录音频;3:mix模式 全录;4:mix模式 仅录视频;5:mix模式 仅录音频
userId string 用户ID,如果录像模式为Mix 此值为空
  • 回调状态码说明
状态码 说明 Eng
10000 正常 ok
47019 第三方存储失败 融云重试中 UploadFail Local save
47020 第三方存储失败 融云重试超过24小时 删除文件 UploadFail,Local save time out,Del file
47025 本地存储失败 Local save fail

注: 当第三方存储服务出现故障时 ,录制的文件会在融云录制服务器上暂存,并会每隔10s重试一次, 需要注意的是融云暂存时间最长24小时,超出后暂存数据会被清除;所以建议在您收到失败回调后更换存储服务商,新启动的录像任务会存到新配置的存储单元上,降低您的损失(配置生效时间一般 30分钟);

  • 1.录像开始

录像系统会在录像开始时回调此次录像的模式,配置的封装文件格式等信息 ,配置字段定义如下:

字段名称 类型 说明
trigger Int 录像启动模式: 1 自动启动录像任务
mixLayout Int Mix模式下布局:2 悬浮布局(默认) 3 自适应布局
slicesMin Int 文件切片时间(分钟)
audioFormat String 设置的音频文件格式
videoFormat String 设置的视频文件格式
audioSample Int 音频采样率 ,如果用户没有设置录制音频 这个值为空
videoResoulation String 视频文件分辨率 640X480 中间符号为英语大写x,如果用户没有设置录制音频 这个值为空
{
	"timestamp": 1530027865231,
	"type": 1,
	"appKey": "e0x9wycfx7flq",
	"recordId": "rec123",
	"sessionId": "lSA2G6CUf9A-6nnoNwXCx8",
	"roomId": "111",
	"mod": 1,
	"userId": "2582",
	"config": {
		"trigger": 0,
		"mixLayout": 2,
		"slicesMin": 30,
		"audioFormat": "aac",
		"videoFormat": "wav"
	},
	"output": {
		"fileName": "1.mkv",
		"audioSample": 48000,
		"videoResoulation": "640X480",
		"fileState": "10000",
		"fileMsg": "ok"
	}
}
  • 2.录像切片

如果录像时长达到设置的切片时间;服务会对音/视频数据封装一次,封装完成后回调信息如下所示; 用户可以通过"recordId"来关联录像任务。

{
	"timestamp": 1530027865231,
	"type": 1,
	"appKey": "e0x9wycfx7flq",
	"recordId": "rec123",
	"sessionId": "lSA2G6CUf9A-6nnoNwXCx8",
	"roomId": "111",
	"mod": 1,
	"userId": "2582",
	"output": {
		"fileName": "1.aac",
		"fileSize": 111,
		"fileState": "10000",
		"fileMsg": "ok"
	}
}
  • 3.录像结束

录像系统会在录像结束时回调如下信息,其中"output"填写最后一个切片文件相应信息:

{
 "timestamp": 1530027865231,
	"type": 3,
	"appKey": "e0x9wycfx7flq",
	"recordId": "rec123",
	"sessionId": "lSA2G6CUf9A-6nnoNwXCx8",
	"roomId": "111",
	"mod": 1,
	"userId": "2582",
	"output": {
		"fileName": "1.aac",
		"fileSize": 111,
		"fileState": "10000",
		"fileMsg": "ok"
	}
}
  • 4.上传文件

录像系统会在封装文件上传结束后回调如下信息:

{
	"timestamp": 1530027865231,
	"type": 4,
	"appKey": "e0x9wycfx7flq",
	"recordId": "rec123",
	"sessionId": "lSA2G6CUf9A-6nnoNwXCx8",
	"roomId": "111",
	"userId": "2582",
	"output": {
		"fileName": "1.mp4",
		"fileUrl": "http://oss/record/1.wav",
		"fileState": "10000",
		"fileMsg": "ok"
	}
}