智慧工地数据中心接口之
视频监控接口v3.0
版本号 | 更新日期 | 更新内容 |
V3.0 | 2019-07-19 | 3.0版本 |
视频监控接口较其他数据上传接口较为特殊,在监管平台中不会直接保存实际的视频数据,只在需要查看时通过供应商提供的接口去获取视频的播放地址,在接入时供应商需要像监管平台提交视频设备的基本信息(如下图1所示);需要播放监控视频时,如果之前提交的视频基本信息中有可直接播放的视频地址(playUrl字段有值)则会直接调用该地址进行播放否则监管平台根据供应商提交的信息向供应商服务发起播放请求,获取视频的播放地址(如下图2所示):
图1 视频供应商提交视频信息接口示意
图2 监管平台播放视频流程示意
视频监控播放接口实际是智慧工地信息管理平台向视频播放提供方的接口发起请求,接口采用 HTTP GET 方式,项目唯一编码及摄像头编号作为请求参数。视频播放提供方应返回对应的摄像头的视频播放地址。返回的视频流必须是一个HTML5兼容的格式(HLS),可以不借助其他插件直接在支持HTML5标准的浏览器(PC端/移动端)中播放。
智慧工地信息管理平台向视频播放提供方发起请求时同样会对请求进行签名,视频播放提供方应当按照权限认证接口中描述签名方式对请求签名进行验证,保证数据安全。
视频监控接入的接口分为两个部分:提交基本信息接口(视频摄像头清单上传接口)由智慧工地信息管理平台提供,供应商通过此接口上报视频监控摄像头的所属项目、编号、视频获取地址等信息;获取视频直播地址接口由供应商提供,监管平台需要播放视频时调用此接口,传入项目编号和设备编号等参数,获取指定监控设备的实时视频流播放地址。
此接口由监管平台提供,供应商向此接口提交项目上的视频监控设备信息。接口采用覆盖式更新的策略,根据项目密钥对定位项目后,会用本次提交的信息覆盖项目已有的信息。这样可以简化更新项目下的视频设备信息时的复杂度,但是要注意每次上传指定项目的视频设备信息时,都需要全量上传。
/api/open/iot/v3/video/info
HTTP POST
1. 请求头
请求头具体的生成方法请参考《智慧工地数据中心接口之认证鉴权接口》。
2. 请求体
请求体为JSON数据格式,内容为JSON对象数据,表示可以一次传入多行记录。格式如下:
[ { "sourceId":"3ddd287c-8567-11e7-857d-00163e32d704", "serialNo":" TSVS837819828", "showName":"项目大门", "camNo":1, "coverUrl":"http:// {供应商服务地址}/videoCover/1.png ", "getUrl":"http:// {供应商服务地址}", "playUrl":"http://{供应商服务地址}/XXX.m3u8" } ] |
注意:以上数据仅用于举例说明数据格式,各字段以项目实际数据为准。
视频播放会以camNo排序,且系统默认camNo最小的序号为项目主摄像头。
原则主摄像头应覆盖项目全貌。
各字段说明如下表:
字段名 | 值类型 | 说明 | 是否必输 |
sourceId | String | 由服务商提供的唯一ID,用于供应商对数据跟踪 | 否 |
serialNo | String | 摄像头物理编号 | 否 |
showName | String | 监控区域名称例如“大门”,用于平台界面显示,非必输项 | 否 |
camNo | Int | 摄像头编号 | 是 |
coverUrl | String | 视频的封面图片 | 是 |
getUrl | String | 获取可播放的视频流的url地址, 需要包含查询参数,监管平台会访问此地址获取视频 | 与playUrl不能同时为空 |
playUrl | String | 可直接播放的视频流地址,如果该项有值平台会直接取该地址进行播放 | 与getUrl不能同时为空 |
{ "code":"1", "message":"请求数据格式错误" } |
代码值 | 说明 |
0 | 正常 |
1 | 参数格式 |
2 | 数据内容错误 |
3 | 无授权 |
4 | 系统异常 |
此接口由供应商提供,接口地址应随视频设备基本信息提交到监管平台。监管平台在需要播放监控视频时,向供应商提供的接口发起请求,获得对应监控设备的视频流播放地址。
由供应商提供,随监控设备基本信息一起提交到监管平台。
HTTP GET
1. 请求头
请求头具体的生成方法请参考《智慧工地数据中心接口之认证鉴权接口》。本接口比较特殊,由监管平台计算签名,供应商平台验证签名。
2. 请求参数
请求参数由供应商在getUrl中自行处理,监管平台使用供应商上传的完整url调用,调用时监管平台不对url做任何修改。
{ "code":"0", "message":"操作成功", "content":{ "playUrl":"http:// {供应商服务地址}/XXX.m3u8", "camNo":1 } } |
返回值说明如下表:
字段名 | 值类型 | 说明 |
playUrl | String | 视频的实际播放地址 |
camNo | Int | 摄像头编号 |
代码值 | 说明 |
0 | 正常 |
1 | 参数格式 |
2 | 数据内容错误 |
3 | 无授权 |
4 | 系统异常 |
部分内容由用户投稿或者来源于网络,如有侵权,请联系底部邮箱进行删除!非常感谢您的支持!