接口列表
本节包含直播地址相关接口等。使用逻辑为:开通直播工单—获取直播地址—不使用时关闭直播功能。未开通直播功能的设备无法获取直播地址。
接口列表如下:
序号 | 接口功能 | 描述 |
---|---|---|
1 | 获取用户下直播视频列表 | 获取用户下的直播地址列表 |
2 | 获取指定有效期的直播地址 | 获取指定有效期的直播地址 |
3 | 开通直播功能 | 批量开通直播功能 |
4 | 获取直播地址 | 批量获取设备的直播地址信息 |
5 | 关闭直播功能 | 批量关闭直播功能 |
获取用户下直播视频列表
接口功能
该接口适用于已经开通过直播的用户,用以获取账号下的视频地址列表。(绑定地址)
请求地址
https://open.ys7.com/api/lapp/live/video/list
请求方式
POST
子账户token请求所需最小权限
"Permission":"Get"
"Resource":"Cam:序列号:通道号"
请求参数
Key | 类型 | 描述 | 是否必选 |
---|---|---|---|
accessToken | String | 授权过程获取的access_token | Y |
pageStart | int | 分页起始页,从0开始 | N |
pageSize | int | 分页大小,默认为10,最大为50 |
N |
- HTTP请求报文
POST /api/lapp/live/video/list HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded
accessToken=at.20h863523v1zfck75qgmwhoy7vl2teqp&pageStart=0&pageSize=3
- 返回数据
{
"page": {
"total": 3,
"page": 0,
"size": 3
},
"data": [
{
"deviceSerial": "427734444",
"channelNo": 1,
"deviceName":"萤小石",
"liveAddress": "http://hls.open.ys7.com/openlive/ed98eeead4c843f898fef1c203313364.m3u8",
"hdAddress": "http://hls.open.ys7.com/openlive/ed98eeead4c843f898fef1c203313364.hd.m3u8",
"rtmp": "rtmp://rtmp.open.ys7.com/openlive/ed98eeead4c843f898fef1c203313364",
"rtmpHd": "rtmp://rtmp.open.ys7.com/openlive/ed98eeead4c843f898fef1c203313364.hd",
"beginTime": 1462427319000,
"endTime": 1464077565000,
"status": 1,
"exception": 0
},
{
"deviceSerial": "502608888",
"channelNo": 1,
"deviceName":"萤小石",
"liveAddress": null,
"hdAddress": null,
"rtmp": null,
"rtmpHd": null,
"beginTime": 1459267200000,
"endTime": 1490803200000,
"status": 1,
"exception": 3
},
{
"deviceSerial": "519261888",
"channelNo": 1,
"deviceName":"萤小石",
"liveAddress": null,
"hdAddress": null,
"rtmp": null,
"rtmpHd": null,
"beginTime": 1459267200000,
"endTime": 1490803200000,
"status": 1,
"exception": 3
}
],
"code": "200",
"msg": "操作成功!"
}
- 返回字段
字段名 | 类型 | 描述 |
---|---|---|
deviceSerial | String | 设备序列号,存在英文字母的设备序列号,字母需为大写 |
channelNo | int | 通道号 |
deviceName | String | 设备名称 |
liveAddress | String | HLS流畅直播地址 |
hdAddress | String | HLS高清直播地址 |
rtmp | String | RTMP流畅直播地址 |
rtmpHd | String | RTMP高清直播地址 |
beginTime | long | 开始时间,long格式如1472694964067,精确到毫秒,该字段已无效,将在2017年6月1号去掉 |
endTime | long | 过期时间,long格式如1472794964067,精确到毫秒,该字段已无效,将在2017年6月1号去掉 |
status | int | 地址使用状态:0-未使用或直播已关闭,1-使用中,2-已过期,3-直播已暂停,0状态不返回地址,其他返回 |
exception | int | 地址异常状态:0-正常,1-设备不在线,2-设备开启视频加密,3-设备删除,4-失效,5-未绑定,6-账户下流量已超出,7-设备接入限制,0/1/2/6状态返回地址,其他不返回 |
注:status表示地址的状态,而exception表示地址相关的设备或者服务状态等异常状态。
- 返回码
返回码 | 返回消息 | 描述 |
---|---|---|
200 | 操作成功 | 请求成功 |
10001 | 参数错误 | 参数为空或格式不正确 |
10002 | accessToken异常或过期 | 重新获取accessToken |
10005 | appKey异常 | appKey被冻结 |
49999 | 数据异常 | 接口调用异常 |
获取指定有效期的直播地址
接口功能:
该接口适用于已经开通过直播的用户,用以根据设备序列号和通道号获取指定有效期的直播地址,可用于防盗链。(绑定地址)
请求地址
https://open.ys7.com/api/lapp/live/address/limited
请求方式
POST
子账户token请求所需最小权限
`"Permission":"Get"` `"Resource":"Cam:序列号:通道号"`
请求参数
参数名 | 类型 | 描述 | 是否必选 |
---|---|---|---|
accessToken | String | 授权过程获取的access_token | Y |
deviceSerial | String | 设备序列号,存在英文字母的设备序列号,字母需为大写 | Y |
channelNo | int | 通道号,IPC设备填1 | Y |
expireTime | int | 地址过期时间:单位秒数,最大默认62208000(即720天),最小默认300(即5分钟)。非必选参数,为空时返回对应设备和通道的永久地址 | N |
- HTTP请求报文
POST /api/lapp/live/address/limited HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded
accessToken=at.20h863523v1zfck75qgmwhoy7vl2teqp&deviceSerial=427734888&channelNo=1&expireTime=300
- 返回数据
{
"data": {
"deviceSerial": "440912222",
"channelNo": 1,
"deviceName":"萤小石",
"liveAddress": "http://open.ys7.com/openlive/temp.m3u8?t=8Yh6jnVwyq6-RU33oaX3nEogqryuNBU2P1Qqce-dT6V-TsLRWj-7kPVukT8lIlvm",
"hdAddress": "http://open.ys7.com/openlive/temp.hd.m3u8?t=8Yh6jnVwyq6-RU33oaX3nEogqryuNBU2P1Qqce-dT6V-TsLRWj-7kPVukT8lIlvm",
"rtmp": null,
"rtmpHd": null,
"status": 1,
"exception": 0,
"beginTime": 1484038680939,
"endTime": 1484038980939
},
"code": "200",
"msg": "操作成功!"
}
- 返回字段:
字段名 | 类型 | 描述 |
---|---|---|
deviceSerial | String | 设备序列号,存在英文字母的设备序列号,字母需为大写 |
channelNo | int | 通道号 |
deviceName | String | 设备名称 |
liveAddress | String | HLS流畅直播地址 |
hdAddress | String | HLS高清直播地址 |
rtmp | String | RTMP流畅直播地址 |
rtmpHd | String | RTMP高清直播地址 |
beginTime | long | 开始时间,long格式如1472694964067,精确到毫秒。expireTime参数为空时该字段无效 |
endTime | long | 过期时间,long格式如1472794964067,精确到毫秒。expireTime参数为空时该字段无效 |
status | int | 地址使用状态:0-未使用或直播已关闭,1-使用中,2-已过期,3-直播已暂停,0状态不返回地址,其他返回 |
exception | int | 地址异常状态:0-正常,1-设备不在线,2-设备开启视频加密,3-设备删除,4-失效,5-未绑定,6-账户下流量已超出,7-设备接入限制,0/1/2/6状态返回地址,其他不返回 |
注:status表示地址的状态,而exception表示地址相关的设备或者服务状态等异常状态。
- 返回码
返回码 | 返回消息 | 备注 |
---|---|---|
200 | 操作成功 | 请求成功 |
10001 | 参数错误 | 参数为空或格式不正确 |
10002 | accessToken异常或过期 | 重新获取accessToken |
10005 | appKey异常 | appKey被冻结 |
10026 | 设备数量超出个人版限制,当前设备无法操作,请充值企业版 | |
20002 | 设备不存在 | |
20007 | 设备不在线 | |
20014 | deviceSerial不合法 | |
20018 | 该用户不拥有该设备 | 检查设备是否属于当前账户 |
49999 | 数据异常 | 接口调用异常 |
60060 | 地址未绑定 | 请前往官网设置直播 |
开通直播功能
接口功能:
该接口用于根据序列号和通道号批量开通直播功能(只支持可观看视频的设备)。
请求地址
https://open.ys7.com/api/lapp/live/video/open
请求方式
POST
子账户token请求所需最小权限
`"Permission":"Config"` `"Resource":"Cam:序列号:通道号"`
请求参数
参数名 | 类型 | 描述 | 是否必选 |
---|---|---|---|
accessToken | String | 授权过程获取的access_token | Y |
source | String | 直播源,[设备序列号]:[通道号],[设备序列号]:[通道号]的形式,例如427734222:1,423344555:3,均采用英文符号,限制50个 | Y |
- HTTP请求报文
POST /api/lapp/live/video/open HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded
accessToken=at.dunwhxt2azk02hcn7phqygsybbw0wv6p&source=427734222%3A1%2C423344555%3A3
- 返回数据
{
"code": "200",
"msg": "操作成功",
"data": [
{
"deviceSerial": "427734222",
"channelNo": 1,
"ret": "200",
"desc": "开通成功!"
},
{
"deviceSerial": "423344555",
"channelNo": 3,
"ret": "200",
"desc": "开通成功!"
}
]
}
- 返回字段:
字段名 | 类型 | 描述 |
---|---|---|
deviceSerial | String | 设备序列号,存在英文字母的设备序列号,字母需为大写 |
channelNo | int | 通道号 |
ret | String | 设备开通状态码,参考下方返回码 |
desc | String | 设备开通状态描述 |
注意:该接口请求时先解析code属性,如果返回200即表示成功,方可继续解析data属性的内容。
- 返回码
返回码 | 返回消息 | 备注 |
---|---|---|
200 | 操作成功 | 请求成功 |
10001 | 参数错误 | 参数为空或格式不正确 |
10002 | accessToken异常或过期 | 重新获取accessToken |
10004 | 用户不存在 | |
10005 | appKey异常 | appKey被冻结 |
10017 | appKey不存在 | 确认appKey是否正确 |
10026 | 设备数量超出个人版限制,当前设备无法操作,请充值企业版 | |
20002 | 设备不存在 | |
20007 | 设备不在线 | |
20014 | deviceSerial不合法 | |
20018 | 该用户不拥有该设备 | 检查设备是否属于当前账户 |
20032 | 该用户下通道不存在 | |
60020 | 不支持该命令 | 确认设备是否支持预览操作 |
60061 | 账户流量已超出或未购买,限制开通 | 确认设备是否支持预览操作 |
60062 | 该通道直播已开通 | |
49999 | 数据异常 | 接口调用异常 |
获取直播地址
接口功能:
该接口用于根据序列号和通道号批量获取设备的直播地址信息,开通直播后才可获取直播地址
该接口获取直播地址固定不变,永久有效
。请求地址
https://open.ys7.com/api/lapp/live/address/get
请求方式
POST
子账户token请求所需最小权限
`"Permission":"Get"` `"Resource":"Cam:序列号:通道号"`
请求参数
参数名 | 类型 | 描述 | 是否必选 |
---|---|---|---|
accessToken | String | 授权过程获取的access_token | Y |
source | String | 直播源,[设备序列号]:[通道号],[设备序列号]:[通道号]的形式,例如427734222:1,423344555:3,均采用英文符号,限制50个 | Y |
- HTTP请求报文
POST /api/lapp/live/address/get HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded
accessToken=at.dunwhxt2azk02hcn7phqygsybbw0wv6p&source=427734222%3A1%2C423344555%3A3
- 返回数据
{
"data": [
{
"deviceSerial": "427734203",
"channelNo": 1,
"deviceName": "C1(427734203)",
"hls": "http://test.ys7.com:66/openlive/b475942b03544a5aa35b651670d8712c.m3u8",
"hlsHd": "http://test.ys7.com:66/openlive/b475942b03544a5aa35b651670d8712c.hd.m3u8",
"rtmp": "rtmp://10.82.0.190:1935/openlive/b475942b03544a5aa35b651670d8712c",
"rtmpHd": "rtmp://10.82.0.190:1935/openlive/b475942b03544a5aa35b651670d8712c.hd",
"status": 1,
"exception": 0,
"ret": "200",
"desc": "获取成功!"
},
{
"deviceSerial": "464575688",
"channelNo": 1,
"deviceName": null,
"hls": null,
"hlsHd": null,
"rtmp": null,
"rtmpHd": null,
"status": -1,
"exception": -1,
"ret": "60020",
"desc": "不支持该命令"
}
],
"code": "200",
"msg": "操作成功!"
}
- 返回字段:
字段名 | 类型 | 描述 |
---|---|---|
ret | String | 状态码,参考下方返回码。优先判断该错误码,返回200即表示成功。 |
desc | String | 状态描述 |
deviceSerial | String | 设备序列号,存在英文字母的设备序列号,字母需为大写 |
channelNo | int | 通道号 |
deviceName | String | 设备名称 |
hls | String | HLS流畅直播地址 |
hlsHd | String | HLS高清直播地址 |
rtmp | String | RTMP流畅直播地址 |
rtmpHd | String | RTMP高清直播地址 |
beginTime | long | 开始时间,long格式如1472694964067,精确到毫秒。expireTime参数为空时该字段无效 |
endTime | long | 过期时间,long格式如1472794964067,精确到毫秒。expireTime参数为空时该字段无效 |
status | int | 地址使用状态:0-未使用或直播已关闭,1-使用中,2-已过期,3-直播已暂停,0状态不返回地址,其他返回。-1表示ret不返回200时的异常情况,参考ret返回错误码。 |
exception | int | 地址异常状态:0-正常,1-设备不在线,2-设备开启视频加密,3-设备删除,4-失效,5-未绑定,6-账户下流量已超出,7-设备接入限制,0/1/2/6状态返回地址,其他不返回。-1表示ret不返回200时的异常情况,参考ret返回错误码。 |
注意:该接口请求时先解析code属性,如果返回200即表示成功,可继续解析data属性的内容,每一个地址对象中先解析ret属性,如果返回200表示成功,再根据status属性和exception属性判断是否存在异常。
- 返回码
返回码 | 返回消息 | 备注 |
---|---|---|
200 | 操作成功 | 请求成功 |
10001 | 参数错误 | 参数为空或格式不正确 |
10002 | accessToken异常或过期 | 重新获取accessToken |
10004 | 用户不存在 | |
10005 | appKey异常 | appKey被冻结 |
10017 | appKey不存在 | 确认appKey是否正确 |
10026 | 设备数量超出个人版限制,当前设备无法操作,请充值企业版 | |
20002 | 设备不存在 | |
20007 | 设备不在线 | |
20014 | deviceSerial不合法 | |
20018 | 该用户不拥有该设备 | 检查设备是否属于当前账户 |
20032 | 该用户下通道不存在 | |
60020 | 不支持该命令 | 确认设备是否支持预览操作 |
60060 | 地址未绑定 | 该通道地址未绑定,不能获取地址 |
49999 | 数据异常 | 接口调用异常 |
关闭直播功能
接口功能:
该接口用于根据序列号和通道号批量关闭直播功能。
请求地址
https://open.ys7.com/api/lapp/live/video/close
请求方式
POST
子账户token请求所需最小权限
`"Permission":"Config"` `"Resource":"Cam:序列号:通道号"`
请求参数
参数名 | 类型 | 描述 | 是否必选 |
---|---|---|---|
accessToken | String | 授权过程获取的access_token | Y |
source | String | 直播源,[设备序列号]:[通道号],[设备序列号]:[通道号]的形式,例如427734222:1,423344555:3,均采用英文符号 | Y |
- HTTP请求报文
POST /api/lapp/live/video/close HTTP/1.1
Host: open.ys7.com
Content-Type: application/x-www-form-urlencoded
accessToken=at.dunwhxt2azk02hcn7phqygsybbw0wv6p&source=427734222%3A1%2C423344555%3A3
- 返回数据
{
"code": "200",
"msg": "操作成功",
"data": [
{
"deviceSerial": "427734222",
"channelNo": 1,
"ret": "200",
"desc": "操作成功!"
},
{
"deviceSerial": "423344555",
"channelNo": 3,
"ret": "200",
"desc": "操作成功!"
}
]
}
- 返回字段:
字段名 | 类型 | 描述 |
---|---|---|
deviceSerial | String | 设备序列号,存在英文字母的设备序列号,字母需为大写 |
channelNo | int | 通道号 |
ret | String | 设备关闭状态码,参考下方返回码 |
desc | String | 设备关闭状态描述 |
注意:该接口请求时先解析code属性,如果返回200即表示成功,方可继续解析data属性的内容。
- 返回码
返回码 | 返回消息 | 备注 |
---|---|---|
200 | 操作成功 | 请求成功 |
10001 | 参数错误 | 参数为空或格式不正确 |
10002 | accessToken异常或过期 | 重新获取accessToken |
10004 | 用户不存在 | |
10005 | appKey异常 | appKey被冻结 |
10017 | appKey不存在 | 确认appKey是否正确 |
10026 | 设备数量超出个人版限制,当前设备无法操作,请充值企业版 | |
20002 | 设备不存在 | |
20007 | 设备不在线 | |
20014 | deviceSerial不合法 | |
20018 | 该用户不拥有该设备 | 检查设备是否属于当前账户 |
20032 | 该用户下通道不存在 | |
60020 | 不支持该命令 | 确认设备是否支持预览操作 |
60063 | 直播未使用或直播已关闭 | |
49999 | 数据异常 | 接口调用异常 |