2.4. 直播 REST API¶
2.4.1. 版本信息¶
v1.0.0, 2017/06/28
2.4.2. 创建直播¶
请求说明: http://xx.yy.zz:8050/avd/api/live/createUserLive HTTP/1.1
接口描述: 创建房间的一个用户直播,仅为方便对某一用户的直播
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
accessToken | String | 是 | 认证成功后根据规则生成的串 |
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
name | String | 是 | 记录名称 |
tag | String | 是 | 记录标记 |
roomId | String | 是 | 所属房间号 |
userId | String | 是 | 用户ID,唯一 |
audioType | String | 是 | 音频类型 [1] |
videoType | String | 是 | 视频类型 [2] |
publishurl | String | 否 | (可选)若存在,服务器优先推送此地址 |
rtmpurl | String | 否 | rtmp 地址 |
hlsurl | String | 否 | hls 地址 |
返回说明:
http 响应:json
{
result: "0"
data: {
"id" : "b40ef09b-3811-4726-b508-e41a0f96c68f",
"roomId" : "room-3811-4726-b508",
"name" : "Foo",
"createTime" : "2015-07-23 20:05:52",
"status ":0
"rtmpurl" : "http://rtmp.3tee.cn/b40ef09b-3811-4726-b508-e41a0f",
"hlsurl" : "http://hls.3tee.cn/b40ef09b-3811-4726-b508-e41a0f96c68f"
}
}
主要返回码: 0,
返回值说明:
id:记录号,直播创建的时候产生,唯一标识一个直播的记录 roomId:房间号 name:直播名称 createTime: 创建时间 status: 直播记录状态 [4] rtmpurl:rtmp地址 hlsurl:hls地址
2.4.3. 停止直播¶
请求说明: http://xx.yy.zz:8050/avd/api/live/stop HTTP/1.1
接口描述: 暂停一个直播频道
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
accessToken | String | 是 | 认证成功后根据规则生成的串 |
id | String | 是 | 记录ID |
返回说明:
http 响应:json
{
"ret": 0,
data: {
"id" : "b40ef09b-3811-4726-b508-e41a0f96c68f",
"status" : 2
}
}
主要返回码: 0,
返回值说明:
id:记录号,直播创建的时候产生,唯一标识一个直播的记录
status: 直播记录状态 [4]
2.4.4. 获取一个直播频道信息¶
请求说明: http://xx.yy.zz:8050/avd/api/live/getLive HTTP/1.1
接口描述: 获取一个直播频道信息
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
accessToken | String | 是 | 认证成功后根据规则生成的串 |
id | String | 是 | 记录ID |
返回说明:
http 响应:json
{
"ret": 0,
data: {
"id" : "b40ef09b-3811-4726-b508-e41a0f96c68f",
"roomId" : "room-3811-4726-b508",
"name" : "Foo",
"createTime" : "2015-07-23 20:05:52"
"duration" : 5049,
"audioType" : 1,
"videoType" : 1,
"size" : 247748791,
"status" : 2,
"rtmpurl" : "http://rtmp.3tee.cn/b40ef09b-3811-4726-b508-e41a0",
"hlsurl" : "http://hls.3tee.cn/b40ef09b-3811-4726-b508-e4"
}
}
主要返回码: 0,
返回值说明:
2.4.5. 删除直播记录¶
请求说明: http://xx.yy.zz:8050/avd/api/live/delete HTTP/1.1
接口描述: 删除一个直播频道
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
accessToken | String | 是 | 认证成功后根据规则生成的串 |
id | String | 是 | 记录ID |
返回说明:
http 响应:json
{
"ret": 0,
data: {
"id" : "b40ef09b-3811-4726-b508-e41a0f96c68f",
"status" : 2
}
}
主要返回码: 0,
返回值说明:
id:记录号,直播创建的时候产生,唯一标识一个直播的记录
status: 直播记录状态 [4]
2.4.6. 查询直播记录¶
请求说明: http://xx.yy.zz:8050/avd/api/live/findLives HTTP/1.1
接口描述: 获取当前的直播频道列表
接口实例: http://127.0.0.1:8050/avd/api/live/findLives?accessToken=YmE4ZDg4YTY5NGMzZWMwZWMzNjQ1MWRiZGQwMDlmOTZiNWQxMDVkNg==&begin=1&count=4&filter={“fromTime”:”2017-06-03”,”endTime”:”2017-06-29”,”roomId”:”r5”,”userId”:”testLive”} .. csv-table:: GET参数
header: “参数”, “类型”, “必须”, “说明” widths: 30, 30, 20, 60 “accessToken”, “String”, “是”,”认证成功后根据规则生成的串” “begin”, “int”, “否”,”从第几条记录开始” “count”, “int”, “否”,”取几条记录” “filter”, “JSON”, “否”,”JSON对象,过滤参数信息”
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
fromTime | date | 否 | 筛选直播起始时间(这个时间之后),格式是yyyy-mm-dd |
endTime | date | 否 | 筛选直播停止时间(这个时间之前),格式是yyyy-mm-dd |
roomId | String | 否 | 筛选直播的房间id |
userId | String | 否 | 筛选直播的用户id |
返回说明:
http 响应:json
{
"ret": 0,
data: {
"total" : 21,
"begin" : 5,
"count" : 6,
"items" : [
{
"id" : "b40ef09b-3811-4726-b508-e41a0f96c68f",
"roomId" : "room-3811-4726-b508",
"name" : "Foo",
"audioType " : 1,
"videoType " : 1,
"createTime" : "2015-07-23 20:05:52",
"duration" : 5049,
"size" : 247748791,
"status" : 2,
"url" : "http://record.3tee.cn/b40ef09b-3811-4726-b508-e41a0f96c68f.mp4"
}
... ...
]
}
}
主要返回码: 0,
返回值说明:
2.4.7. 变量定义¶
[1] | (1, 2, 3) 音频类型定义/audioType 0 :无音频 1 :同视频用户的单用户音频 2 :整个房间中的所有音频混音 |
[2] | (1, 2, 3) 视频类型定义/videoType 0 :无视频 1 :视频主流 2 :视频辅流1 3 :视频辅流2 |
[4] | (1, 2, 3, 4, 5) 直播记录状态定义/status 0 :创建直播 1 :正在直播 2 :停止直播 3 :直播已删除 |
2.4.8. 错误码表¶
ret | 详细描述 |
---|---|
0 | 成功 |
301 | 授权不通过 |
305 | 直播异常或已结束 |
310 | 返回超时,多是后台服务未启动 |
312 | 创建失败,多是后台服务未启动 |
313 | 停止失败,多是后台服务未启动 |
314 | 直播Id无效 |
401 | 参数不对 |