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

接口描述: 创建房间的一个用户直播,仅为方便对某一用户的直播

接口实例: http://127.0.0.1:8050/avd/api/live/createUserLive?accessToken=NjBhMTM1YjZlMzIyNGM3NjkwNmFiZTVjMDRkNWVkNjViYzQ4ODRlOQ==

GET参数
参数 类型 必须 说明
accessToken String 认证成功后根据规则生成的串
POST参数
参数 类型 必须 说明
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

接口描述: 暂停一个直播频道

接口实例: http://127.0.0.1:8050/avd/api/record/stop?id=asdfasdfasdf&accessToken=YmE4ZDg4YTY5NGMzZWMwZWMzNjQ1MWRiZGQwMDlmOTZiNWQxMDVkNg==

GET参数
参数 类型 必须 说明
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

接口描述: 获取一个直播频道信息

接口实例: http://127.0.0.1:8050/avd/api/live/getLive?accessToken=NjBhMTM1YjZlMzIyNGM3NjkwNmFiZTVjMDRkNWVkNjViYzQ4ODRlOQ==&id=cfe0ea64-005d-4353-b2f5-91d7fad7c815

GET参数
参数 类型 必须 说明
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,

返回值说明:

id:记录号,直播创建的时候产生,唯一标识一个直播的记录

roomId:房间ID

name:直播名称

createTime:记录创建时间,cst时间

duration:记录时长,秒

audioType:音频类型 [1]

videoType:视频类型 [2]

size:记录文件大小

status: 直播记录状态 [4]

rtmpurl:rtmp 地址

hlsurl: hls 地址

2.4.5. 删除直播记录

请求说明: http://xx.yy.zz:8050/avd/api/live/delete HTTP/1.1

接口描述: 删除一个直播频道

接口实例: http://127.0.0.1:8050/avd/api/live/delete?id=7a45d20e-3eda-4c13-be42-1899d376d268&accessToken=YmE4ZDg4YTY5NGMzZWMwZWMzNjQ1MWRiZGQwMDlmOTZiNWQxMDVkNg==

GET参数
参数 类型 必须 说明
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对象,过滤参数信息”

Filter参数
参数 类型 必须 说明
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,

返回值说明:

id:记录号,直播创建的时候产生,唯一标识一个直播的记录

roomId:房间ID

name:记录名称

createTime:记录创建时间,cst时间

duration:记录时长,秒

audioType:音频类型 [1]

videoType:视频类型 [2]

size:记录文件大小

status: 直播记录状态 [4]

url:记录url

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 参数不对