From de2425e91c80400a6223fe1067355d10e36714a8 Mon Sep 17 00:00:00 2001
From: Unknown <csj_sky@126.com>
Date: 星期三, 03 七月 2019 11:02:13 +0800
Subject: [PATCH] 说明文档
---
视频监控平台vss对外协议.doc | 0
测试rest.txt | 273 +++++++++++++++++++
视频监控平台vss对外协议.txt | 547 +++++++++++++++++++++++++++++++++++++++
3 files changed, 820 insertions(+), 0 deletions(-)
diff --git "a/\346\265\213\350\257\225rest.txt" "b/\346\265\213\350\257\225rest.txt"
new file mode 100644
index 0000000..50ec16e
--- /dev/null
+++ "b/\346\265\213\350\257\225rest.txt"
@@ -0,0 +1,273 @@
+需要开放的端口:
+mysql数据库端口:3306
+srs流媒体服务端口:1935 8080 (TCP)
+videosvr视频服务端口: httpserver: 8060 (TCP) rtspserver:7554 (TCP) 国标服务端口:7060 (UDP和TCP) 国标接收码流端口:31000-35000 (UDP和TCP)
+
+
+一、数据配置管理协议:
+1、设置服务器信息:POST
+ http://192.168.12.112:8060/vssconfig/set_platform_server?gbsvrid=32000000002000000001&gbsvrport=7060&gbsvrname=国标服务&rtspsvrport=7554
+ HTTP Method: GET
+
+ 返回结果:
+ {
+ "errcode":0,
+ "errdesc":"OK"
+ }
+
+2、获取服务器信息:GET
+ http://192.168.12.112:8060/vssconfig/get_platform_server
+ 返回结果:
+ {
+ "errcode":0,
+ "errdesc":"OK",
+ "name":"本级国标平台",
+ "ipaddr":"192.168.12.112",
+ "httpserverport":8060,
+ "publicid":"11000000002000000001",
+ "gbserverport":7060,
+ "rtspservrport":7554,
+ "httpclientip":"",
+ "httpclientport":0
+ }
+
+3.设置上级平台信息:POST
+ 更新或则增加上级平台信息
+ http://192.168.12.112:8060/vssconfig/set_upper_platform_server/update
+ HTTP Method: POST
+
+ Body:
+ {"name":"test_upper1","publicid":"11010000002000000001","ip":"192.168.1.20","port":5060,"authname":"11010000002000000001","authpasswd":"12345678a","registertime":3600,"keepalivetime":60,"synctime":"false","pushprotocol":"udp"}
+ 返回结果:
+ {
+ "errcode":0,
+ "errdesc":"OK"
+ }
+
+ 删除上级平台信息
+ http://192.168.12.112:8060/vssconfig/set_upper_platform_server/delete
+ HTTP Method: POST
+
+ Body:
+ {"name":"test_upper1","publicid":"11010000002000000001","ip":"192.168.1.30","port":5060,"authname":"11010000002000000001","authpasswd":"12345678a","registertime":3600,"keepalivetime":60,"synctime":"false","pushprotocol":"udp"}
+ 返回结果:
+ {
+ "errcode":0,
+ "errdesc":"OK"
+ }
+
+4.获取上级平台信息:GET
+ http://192.168.12.112:8060/vssconfig/get_upper_platform_server/1
+
+ 返回结果:
+ {
+ "errcode":0,"totalsize":2,"onepagesize":10,"totalpage":1,"pageno":1,"count":2,"data":
+ [
+ {"name":"test_upper1","publicid":"11010000002000000001","ip":"192.168.1.20","port":5060,"authname":"11010000002000000001","authpasswd":"12345678a","registertime":3600,"keepalivetime":60,"synctime":"false","pushprotocol":"udp","alive":1},
+ {"name":"test_upper2","publicid":"11010000002000000002","ip":"192.168.1.30","port":5060,"authname":"11010000002000000001","authpasswd":"12345678a","registertime":3600,"keepalivetime":60,"synctime":"false","pushprotocol":"udp","alive":1}
+ ]
+ }
+
+5.获取所有设备信息:GET
+ http://192.168.12.112:8060/vssconfig/get_all_device/1
+
+ 返回结果:
+ {
+ "errcode":0,"totalsize":3,"onepagesize":10,"totalpage":1,"pageno":1,"count":3,"data":
+ [
+ {"publicid":"11000000001320020001","name":"camear1","alive":1,"corp":"Dahua","parentid":"11010000002000000001","ip":"192.168.1.11","port":5060,"username":"","passwd":"","devmode":"gb28181"},
+ {"publicid":"11000000001320020002","name":"camear2","alive":1,"corp":"Dahua","parentid":"11010000002000000001","ip":"192.168.1.12","port":5060,"username":"","passwd":"","devmode":"gb28181"},
+ {"publicid":"11000000001320020003","name":"camear3","alive":1,"corp":"Dahua","parentid":"11010000002000000001","ip":"192.168.1.13","port":5060,"username":"","passwd":"","devmode":"gb28181"}
+ ]
+ }
+
+6.设备管理(一般用于删除设备):POST
+ 删除设备:
+ http://192.168.12.112:8060/vssconfig/set_device/delete
+
+ HTTP Method: POST
+
+ Body:
+ {
+ "count":3,
+ "data":
+ [
+ {"publicid":"11010000001325000001","name":"hik_1","ip":"192.168.45.15", "port":8000,"username":"", "passwd":"", "devmode":"gb28181"},
+ {"publicid":"11016666001320020001","name":"hik_1","ip":"192.168.45.15", "port":8000,"username":"", "passwd":"", "devmode":"gb28181"},
+ {"publicid":"11010000001320020001","name":"hik_1","ip":"192.168.45.15", "port":8000,"username":"", "passwd":"", "devmode":"gb28181"}
+ ]
+ }
+ 返回结果:
+ {
+ "errcode":0,"errdesc":"OK","count":3,"data":
+ [
+ {"publicid":'11010000001325000001',"errcode":0,"errdesc":"OK"},
+ {"publicid":'11016666001320020001',"errcode":-501,"errdesc":"error 501"},
+ {"publicid":'11010000001320020001',"errcode":-502,"errdesc":"error 501"}
+ ]
+ }
+
+7.获取设备的所有通道资源信息:GET
+ http://192.168.12.112:8060/vssconfig/get_all_channel/11010000002000000001/all/1
+
+ 返回结果:
+ {
+ "errcode": 0 ,"errdesc": "OK" ,"totalsize": 5 ,"onepagesize": 100 ,"totalpage": 1 ,"pageno": 1, "count":5,"data":
+ [
+ {"restype":2,"publicid":"11010000002150000004","name":"28181推送角色","alive":1,"corp":"","model":"","owner":"","civilcode":"","address":"","devpubid":"11010000002000000001","parentid":"11010000002000000001","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":0,"streamtype":0,"realrtspurl":""},
+ {"restype":2,"publicid":"11010000002160000009","name":"网关接入摄像机组","alive":1,"corp":"","model":"","owner":"","civilcode":"","address":"","devpubid":"11010000002000000001","parentid":"11010000002150000004","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":0,"streamtype":0,"realrtspurl":""},
+ {"restype":1,"publicid":"11010000001310000004","name":"rtsp_69_1","alive":1,"corp":"51","model":"rtsplib_ipc","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":104.08116,"latitude":30.68946,"ptztype":3,"streamtype":0,"realrtspurl":"rtsp://192.168.12.112:7554/DevAor=11010000001310000004"},
+ {"restype":1,"publicid":"11010000001310000029","name":"成都分公司","alive":1,"corp":"8","model":"hikes_ipc","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":1,"streamtype":0,"realrtspurl":"rtsp://192.168.12.112:7554/DevAor=11010000001310000029"},
+ {"restype":1,"publicid":"11010000001310000030","name":"大华测试摄像机179-1","alive":1,"corp":"1","model":"dahua_IPC","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":1,"streamtype":0,"realrtspurl":"rtsp://192.168.12.112:7554/DevAor=11010000001310000030"}
+ ]
+ }
+
+8.获取设备下的一级资源信息:GET (根据父节点查找)
+ http://192.168.12.112:8060/vssconfig/get_all_channel/11010000002000000001/node/1
+
+ 返回结果:
+ {
+ "errcode": 0 ,"errdesc": "OK" ,"totalsize": 1 ,"onepagesize": 100 ,"totalpage": 1 ,"pageno": 1, "count":1,"data":
+ [
+ {"restype":2,"publicid":"11010000002150000004","name":"28181推送角色","alive":1,"corp":"","model":"","owner":"","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002000000001","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":0,"streamtype":0,"realrtspurl":""}
+ ]
+ }
+
+
+9.获取平台的所有通道资源信息 (不包含资源组) ----> 如果只接入IPC设备, 建议采用该接口获取资源信息
+ http://192.168.12.112:8060/vssconfig/get_platform_all_channel/1
+ 返回结果:
+ {
+ "errcode": 0 ,"errdesc": "OK" ,"totalsize": 3 ,"onepagesize": 100 ,"totalpage": 1 ,"pageno": 1, "count":3,"data":
+ [
+ {"restype":1,"publicid":"11010000001310000004","name":"rtsp_69_1","alive":1,"corp":"51","model":"rtsplib_ipc","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":104.08116,"latitude":30.68946,"ptztype":3,"streamtype":0,"realrtspurl":"rtsp://192.168.12.112:7554/DevAor=11010000001310000004"},
+ {"restype":1,"publicid":"11010000001310000029","name":"成都分公司","alive":1,"corp":"8","model":"hikes_ipc","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":1,"streamtype":0,"realrtspurl":"rtsp://192.168.12.112:7554/DevAor=11010000001310000029"},
+ {"restype":1,"publicid":"11010000001310000030","name":"大华测试摄像机179-1","alive":1,"corp":"1","model":"dahua_IPC","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":1,"streamtype":0,"realrtspurl":"rtsp://192.168.12.112:7554/DevAor=11010000001310000030"}
+ ]
+ }
+
+
+操作相关接口:
+1.PTZ控制
+ 向上: http://192.168.12.112:8060/vss/ptz/up/100/11000000001325000001
+
+ 向下: http://192.168.12.112:8060/vss/ptz/down/100/11000000001325000001
+
+ 向左: http://192.168.12.112:8060/vss/ptz/left/100/11000000001325000001
+
+
+ 向右: http://192.168.12.112:8060/vss/ptz/right/100/11000000001325000001
+
+ 左上: http://192.168.12.112:8060/vss/ptz/leftup/100/11000000001325000001
+
+ 左下: http://192.168.12.112:8060/vss/ptz/leftdown/100/11000000001325000001
+
+ 右上: http://192.168.12.112:8060/vss/ptz/rightup/100/11000000001325000001
+
+ 右下: http://192.168.12.112:8060/vss/ptz/rightdown/100/11000000001325000001
+
+ 镜头近: http://192.168.12.112:8060/vss/ptz/zoomin/100/11000000001325000001
+ 镜头远: http://192.168.12.112:8060/vss/ptz/zoomout/100/11000000001325000001
+
+ 焦距远: http://192.168.12.112:8060/vss/ptz/focusfar/100/11000000001325000001
+ 焦距近: http://192.168.12.112:8060/vss/ptz/focusnear/100/11000000001325000001
+
+ 设置预置位:http://192.168.12.112:8060/vss/ptz/setpos/100/11000000001325000001
+ 调预置位: http://192.168.12.112:8060/vss/ptz/callpos/100/11000000001325000001
+
+ 停止: http://192.168.12.112:8060/vss/ptz/stop/0/11000000001325000001
+
+
+2.录像查询
+ http://192.168.12.112:8060/vss/history_search/2018-08-30T00:00:00/2018-08-30T02:00:00/11000000001325000001
+
+ 返回结果:
+ {
+ "errcode":0,"errdesc":"OK","totalsize":16,"onepagesize":16,"totalpage":1,"pageno":1,"count":16,"data":
+ [
+ {"channelid":"11000000001325000001","begintime":"2018-08-29T23:54:27","endtime":"2018-08-30T00:00:01","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T00:00:01","endtime":"2018-08-30T00:09:28","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T00:09:28","endtime":"2018-08-30T00:11:32","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T00:11:32","endtime":"2018-08-30T00:26:32","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T00:26:32","endtime":"2018-08-30T00:28:37","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T00:28:37","endtime":"2018-08-30T00:43:38","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T00:43:38","endtime":"2018-08-30T00:45:43","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T00:45:43","endtime":"2018-08-30T01:00:43","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T01:00:43","endtime":"2018-08-30T01:02:48","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T01:02:48","endtime":"2018-08-30T01:17:50","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T01:17:50","endtime":"2018-08-30T01:19:54","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T01:19:54","endtime":"2018-08-30T01:34:54","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T01:34:54","endtime":"2018-08-30T01:37:00","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T01:37:00","endtime":"2018-08-30T01:52:00","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T01:52:00","endtime":"2018-08-30T01:54:05","filename":"成都分公司ipc","type":"all"},
+ {"channelid":"11000000001325000001","begintime":"2018-08-30T01:54:05","endtime":"2018-08-30T02:09:04","filename":"成都分公司ipc","type":"all"}
+ ]
+ }
+
+
+3.设备控制
+
+ 手动录像开启:http://192.168.12.112:8060/vss/device_ctrl/record/11000000001325000001/start
+ 手动录像停止: http://192.168.12.112:8060/vss/device_ctrl/record/11000000001325000001/stop
+
+ 返回结果:
+ {
+ "errcode":0,
+ "errdesc":"OK"
+ }
+
+
+4. 实时截图
+ 字段说明:
+ "channelid": (字符串) 通道20位编号
+ "type": (数字) 国标请求视频类型:1:udp 2:tcp主动 3:tcp被动
+
+ "errcode": (数字) 返回值,0表示成功,其他见错误码
+ "imageurl": (字符串) 图片的url地址
+请求:
+ URL: http://192.168.12.112:8060/vss/get_image/11000000001320020001/1
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误,无数据
+ {
+ "errcode":0,
+ "errdesc":"OK",
+ "imagetime":"2019-03-04T11:44:16",
+ "imageurl":"http://192.168.12.112:8088/image/11000000001320020001.jpg"
+ }
+
+5. 重新获取资源目录
+ 字段说明:
+ "devpubid": (字符串) 设备20位编号
+
+请求:
+ URL: http://192.168.12.112:8060/vss/get_catalog/11010000002000000001
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误
+ {
+ "errccode":0,
+ "errdesc":"OK"
+ }
+
+二、报警通知
+ 视频服务器作为httpclient
+ URL: http://192.168.12.112:8060/vssalarm
+
+
+ HTTP Method: POST
+
+ Body:
+ 所有字段都为必填项
+ {"channelid":"11000000001325000001","alarmtype":1,"alarmtime":"2017-09-19T15:13:24","alarmdesc":"fire","longitude":"10.01123","latitude":"20.34221"}
+
+
+
+
+
+
+
diff --git "a/\350\247\206\351\242\221\347\233\221\346\216\247\345\271\263\345\217\260vss\345\257\271\345\244\226\345\215\217\350\256\256.doc" "b/\350\247\206\351\242\221\347\233\221\346\216\247\345\271\263\345\217\260vss\345\257\271\345\244\226\345\215\217\350\256\256.doc"
new file mode 100644
index 0000000..6857b9e
--- /dev/null
+++ "b/\350\247\206\351\242\221\347\233\221\346\216\247\345\271\263\345\217\260vss\345\257\271\345\244\226\345\215\217\350\256\256.doc"
Binary files differ
diff --git "a/\350\247\206\351\242\221\347\233\221\346\216\247\345\271\263\345\217\260vss\345\257\271\345\244\226\345\215\217\350\256\256.txt" "b/\350\247\206\351\242\221\347\233\221\346\216\247\345\271\263\345\217\260vss\345\257\271\345\244\226\345\215\217\350\256\256.txt"
new file mode 100644
index 0000000..efa1f55
--- /dev/null
+++ "b/\350\247\206\351\242\221\347\233\221\346\216\247\345\271\263\345\217\260vss\345\257\271\345\244\226\345\215\217\350\256\256.txt"
@@ -0,0 +1,547 @@
+
+
+
+错误码定义:
+//-----------------------------------------------------------
+
+//内部错误码
+//错误码
+#define ERR_OK 0 //成功 //OK
+
+#define ERR_JSON -71 //json解析失败 //Parse Json Failed
+#define ERR_PERSE -72 //协议解析出错 //Protocol Resolution Error
+#define ERR_PARAM -73 //参数错误 //Parameter Error
+#define ERR_NODATA -74 //无数据 //No Data
+#define ERR_BULID_URL -75 //构造url失败 //Build Url Failed
+
+#define ERR_TIMEOUT -81 //请求超时 //Request Timeout
+#define ERR_DEVICE_OFFLINE -82 //设备下线 //Device Offline
+#define ERR_DEVICE_NOTEXIST -83 //设备不存在 //Device Not Exist
+#define ERR_DEVICE_NOINIT -84 //设备未初始化 //Device Not Init
+#define ERR_DEVCHAN_NOTEXIST -85 //通道不存在 //Channel Not Exist
+
+
+#define ERR_VIDEO_REQ_FAIL -200 //视频请求失败 //Video Request Failed
+#define ERR_VIDEO_REQ_NOTEXIST -201 //视频不存在 //Video Not Exist
+#define ERR_PTZ_CONTRL_FAIL -202 //ptz控制失败 //PTZ Control Failed
+#define ERR_VOD_RECORD_QUERY_FAIL -203 //录像查询失败 //Vod Query Failed
+#define ERR_VOD_CONTRL_FAIL -204 //点播控制失败 //Vod Control Failed
+#define ERR_VOD_NOSESSION -205 //没有找到点播下载句柄 //Vod Session Not Exist
+
+#define ERR_VSS_NO_MEMORY -300 //申请内存失败
+#define ERR_PORT_ALLOCAT_FAIL -301 //端口分配失败 //Port allocation failure
+//内部错误码
+#define ERR_PARTERROR -1001 //部分成功 //Internal Error
+
+
+
+通道为请求视频的单位,通道id生成方式:
+
+ 采用20位国标id的方式:
+
+一、数据配置管理协议:
+1.设置服务器信息
+ 字段说明:
+ "gbsvrname": (字符串) 国标平台的名称
+ "gbsvrid": (字符串) 国标平台的20位ID (200类型)
+ "gbsvrport": (数字) 国标平台监听的端口
+ "rtspsvrport": (数字) RTSP服务的端口
+
+ "errcode: (数字) 返回状态值,0表示正常状态,其他见错误码(下同)
+ "errdesc": (字符串) 错误码描述(下同)
+请求:
+ URL: http://192.168.0.10:8060/vssconfig/set_platform_server?gbsvrid=32000000002000000001&gbsvrport=7060&gbsvrname=国标服务&rtspsvrport=7554
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误
+ {
+ "errcode":0,
+ "errdesc":"OK"
+ }
+
+2.获取服务器信息 (根节点)
+ 字段说明:
+ "name": (字符串) 国标平台的名称
+ "publicid": (字符串) 国标平台的20位ID (200类型)
+ "gbserverport": (数字) 国标平台监听的端口
+ "rtspservrport": (数字) RTSP服务的端口
+ "httpclientip": (字符串) HTTP客户端的ip(用于报警通知,一般不设置)
+ "httpclientport": (数字) HTTP客户端的端口(用于报警通知,一般不设置)
+
+ "errcode: (数字) 返回状态值,0表示正常状态,其他见错误码(下同)
+ "errdesc": (字符串) 错误码描述(下同)
+请求:
+ URL: http://192.168.0.10:8060/vssconfig/get_platform_server
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误,无数据
+ {
+ "errcode":0,
+ "errdesc":"OK",
+ "name":"bejing",
+ "ipaddr":"192.168.0.10",
+ "httpserverport":8060,
+ "publicid":"11000000002000000001",
+ "gbserverport":7060,
+ "rtspservrport":7554,
+ "httpclientip":"",
+ "httpclientport":0
+ }
+
+3.设置上级平台信息
+ 字段说明:
+ "type": (字符串) 上级平台设置的类型 update-更新和增加 delete-删除
+
+ "name": (字符串) 上级平台的名称
+ "publicid": (字符串) 上级国标平台的20位ID (200类型)
+ "ip": (字符串) 上级国标平台的ip地址
+ "port": (数字) 上级国标平台的端口
+ "authname": (字符串) 上级国标平台认证的用户名
+ "authpasswd": (字符串) 上级国标平台认证的密码
+ "registertime": (数字) 上级国标平台的注册饱和时间间隔
+ "keepalivetime": (数字) 上级国标平台的心跳饱和时间间隔
+ "synctime": (字符串) 是否同步上级平台的时间
+ "pushprotocol": (字符串) 资源返回或则录像检索返回采用的协议方式(UDP或则TCP) (目前只支持UDP)
+
+ "errcode: (数字) 返回状态值,0表示正常状态,其他见错误码(下同)
+ "errdesc": (字符串) 错误码描述(下同)
+请求:
+ URL: http://192.168.0.10:8060/vssconfig/set_upper_platform_server/{type}
+
+ HTTP Method: POST
+
+ Body:
+ {"name":"test_upper1","publicid":"11010000002000000001","ip":"192.168.0.10","port":5060,"authname":"11010000002000000001","authpasswd":"12345678a","registertime":3600,"keepalivetime":60,"synctime":"false","pushprotocol":"udp"}
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误
+ {
+ "errcode":0,
+ "errdesc":"OK"
+ }
+
+4.获取上级平台信息
+ 字段说明:
+ "pageno": (数字) 指定获取第几页,第一次为1,返回总页数,总条数
+
+ "errcode: (数字) 返回状态值,0表示正常状态,其他见错误码(下同)
+ "errdesc": (字符串) 错误码描述(下同)
+ "totalsize": (数字) 设备总数 (下同)
+ "onepagesize": (数字) 每页大小 (下同)
+ "totalpage": (数字) 总分页数 (下同)
+ "pageno": (数字) 当前第几页(下同)
+ "count": (数字) 当前有几条数据(下同)
+ "data": 设备信息,参照“1.设备管理”定义
+
+ "name": (字符串) 上级平台的名称
+ "publicid": (字符串) 上级国标平台的20位ID (200类型)
+ "ip": (字符串) 上级国标平台的ip地址
+ "port": (数字) 上级国标平台的端口
+ "authname": (字符串) 上级国标平台认证的用户名
+ "authpasswd": (字符串) 上级国标平台认证的密码
+ "registertime": (数字) 上级国标平台的注册饱和时间间隔
+ "keepalivetime": (数字) 上级国标平台的心跳饱和时间间隔
+ "synctime": (字符串) 是否同步上级平台的时间
+ "pushprotocol": (字符串) 资源返回或则录像检索返回采用的协议方式(UDP或则TCP) (目前只支持UDP)
+ "alive" (数字) 0-不在线 1-在线
+
+请求:
+ URL: http://192.168.0.10:8060/vssconfig/get_upper_platform_server/{pageno}
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误,无数据; 如果errcode等于0,那么数据里面的每项都是必填项
+ {
+ "errcode":0,"totalsize":3,"onepagesize":10,"totalpage":1,"pageno":1,"count":3,"data":
+ [
+ {"name":"test_upper1","publicid":"11010000002000000001","ip":"192.168.0.10","port":5060,"authname":"11010000002000000001","authpasswd":"12345678a","registertime":3600,"keepalivetime":60,"synctime":"false","pushprotocol":"udp","alive":1},
+ {"name":"test_upper2","publicid":"11010000002000000002","ip":"192.168.1.240","port":5060,"authname":"11010000002000000001","authpasswd":"12345678a","registertime":3600,"keepalivetime":60,"synctime":"false","pushprotocol":"udp","alive":1},
+ {"name":"test_upper3","publicid":"11010000002000000003","ip":"192.168.1.250","port":5060,"authname":"11010000002000000001","authpasswd":"12345678a","registertime":3600,"keepalivetime":60,"synctime":"false","pushprotocol":"udp","alive":1}
+ ]
+ }
+
+5.获取所有的设备信息 (二级根节点)
+ 字段说明:
+ "pageno": (数字) 指定获取第几页,第一次为1,返回总页数,总条数
+
+ "errcode: (数字) 返回状态值,0表示正常状态,其他见错误码(下同)
+ "errdesc": (字符串) 错误码描述(下同)
+ "totalsize": (数字) 设备总数 (下同)
+ "onepagesize": (数字) 每页大小 (下同)
+ "totalpage": (数字) 总分页数 (下同)
+ "pageno": (数字) 当前第几页(下同)
+ "count": (数字) 当前有几条数据(下同)
+ "data": 设备信息,参照“1.设备管理”定义
+
+ "publicid": (字符串) 国标设备20位id
+ "name": (字符串) 资源名称
+ "alive": (数字) 状态 0:不在线 1:在线
+ "corp": (字符串) 厂商
+ "parentid": (字符串) 父节点id
+ "ip": (字符串) ip地址
+ "port": (数字) 端口
+ "username" (字符串) 设备注册用户名
+ "passwd" (字符串) 设备注册密码
+ "devmode" (字符串) 设备类型
+
+请求:
+ URL: http://192.168.0.10:8060/vssconfig/get_all_device/{pageno}
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误,无数据; 如果errcode等于0,那么数据里面的每项都是必填项
+ {
+ "errcode":0,"totalsize":4,"onepagesize":100,"totalpage":1,"pageno":1,"count":4,"data":
+ [
+ {"publicid":"11000000001320020001","name":"camear1","alive":1,"corp":"Dahua","parentid":"11010000002000000001","ip":"192.168.1.11","port":5060,"username":"","passwd":"","devmode":"gb28181"},
+ {"publicid":"11000000001320020002","name":"camear2","alive":1,"corp":"Dahua","parentid":"11010000002000000001","ip":"192.168.1.12","port":5060,"username":"","passwd":"","devmode":"gb28181"},
+ {"publicid":"11000000001320020003","name":"camear3","alive":1,"corp":"Dahua","parentid":"11010000002000000001","ip":"192.168.1.13","port":5060,"username":"","passwd":"","devmode":"gb28181"}
+ ]
+ }
+
+6. 设备管理 (一般用于删除设备)
+ 方法说明:
+ "type": (字符串) 上级平台设置的类型 update-更新和增加 delete-删除
+
+ 字段说明:
+ "publicid": (字符串) 国标设备20位id
+ "name": (字符串) 资源名称
+ "ip": (字符串) ip地址
+ "port": (数字) 端口
+ "username" (字符串) 设备注册用户名 (一般不填写)
+ "passwd" (字符串) 设备注册密码 (一般不填写)
+ "devmode" (字符串) 设备类型 (默认gb28181)
+
+ "errcode: (数字) 返回状态值,0表示正常状态,其他见错误码(下同)
+ "errdesc": (字符串) 错误码描述(下同)
+ "devid": (数字) 返回设备编号
+请求:
+ URL: http://192.168.0.10:8060/vssconfig/set_device/{type}
+
+ HTTP Method: POST
+
+ Body:
+ {
+ "count":3,
+ "data":
+ [
+ {"publicid":"11000000001320020001","name":"hik_1","ip":"192.168.45.15", "port":8000,"username":"", "passwd":"", "devmode":"gb28181"},
+ {"publicid":"11000000001320020002","name":"hik_1","ip":"192.168.45.15", "port":8000,"username":"", "passwd":"", "devmode":"gb28181"},
+ {"publicid":"11000000001320020003","name":"hik_1","ip":"192.168.45.15", "port":8000,"username":"", "passwd":"", "devmode":"gb28181"}
+ ]
+ }
+返回:
+ 其中errcode为必填,errcode小于0表示错误,无数据
+ {
+ "errcode":0,"errdesc":"OK","count":3,"data":
+ [
+ {"publicid":'11000000001320020001',"errcode":0,"errdesc":"OK"},
+ {"publicid":'11000000001320020001',"errcode":-501,"errdesc":"error 501"},
+ {"publicid":'11000000001320020001',"errcode":-502,"errdesc":"error 501"}
+ ]
+ }
+
+
+7.获取设备的所有通道资源信息
+
+ 字段说明:
+ "pageno": (数字) 指定获取第几页,第一次为1,返回总页数,总条数
+ "devpubid": (字符串) 注册的设备id
+ "type" (字符串) "all"-表示获取设备的所有资源 "node"-父节点下的第一级资源
+
+ "errcode: (数字) 返回状态值,0表示正常状态,其他见错误码(下同)
+ "errdesc": (字符串) 错误码描述(下同)
+ "totalsize": (数字) 设备总数 (下同)
+ "onepagesize": (数字) 每页大小 (下同)
+ "totalpage": (数字) 总分页数 (下同)
+ "pageno": (数字) 当前第几页(下同)
+ "count": (数字) 当前有几条数据(下同)
+ "data": 设备信息,参照“1.设备管理”定义
+
+ "restype": (数字) 1-通道资源 2-资源组
+ "publicid": (字符串) 国标资源通道20位id (用于请求视频、控制等操作)
+ "name": (字符串) 资源名称
+ "alive": (数字) 状态 0:不在线 1:在线
+ "corp": (字符串) 厂商
+ "owner": (字符串) 设备归属
+ "civilcode": (字符串) 行政区域 (可以按照行政区域进行划分资源组)
+ "address": (字符串) 地址
+ "devpubid": (字符串) 通道的设备id
+ "parentid": (字符串) 父节点id
+ "ip": (字符串) ip地址
+ "port": (数字) 端口
+ "longitude": (数字) 经度
+ "latitude": (数字) 纬度
+ "ptztype": (数字) 控制类型 1-球机;2-半球;3-固定枪机;4-遥控枪机;
+ "streamtype": (数字) 码流类型 0-H264;1-MPEG2;2-MPEG4;3-SVAC;4-3GP;5-H265;
+ "realrtspurl":(字符串) 实时视频的rtsp地址
+
+请求:
+ URL: http://192.168.0.10:8060/vssconfig/get_all_channel/{devpubid}/{type}/{pageno}
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误,无数据; 如果errcode等于0,那么数据里面的每项都是必填项
+ {
+ "errcode": 0 ,"errdesc": "OK" ,"totalsize": 5 ,"onepagesize": 100 ,"totalpage": 1 ,"pageno": 1, "count":13,"data":
+ [
+ {"restype":2,"publicid":"11010000002150000004","name":"28181推送角色","alive":1,"corp":"","model":"","owner":"","civilcode":"","address":"","devpubid":"11010000002000000001","parentid":"11010000002000000001","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":0,"streamtype":0,"realrtspurl":""},
+ {"restype":2,"publicid":"11010000002160000009","name":"网关接入摄像机组","alive":1,"corp":"","model":"","owner":"","civilcode":"","address":"","devpubid":"11010000002000000001","parentid":"11010000002150000004","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":0,"streamtype":0,"realrtspurl":""},
+ {"restype":1,"publicid":"11010000001310000004","name":"rtsp_69_1","alive":1,"corp":"51","model":"rtsplib_ipc","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":104.08116,"latitude":30.68946,"ptztype":3,"streamtype":0,"realrtspurl":"rtsp://192.168.0.10:7554/DevAor=11010000001310000004"},
+ {"restype":1,"publicid":"11010000001310000029","name":"成都分公司","alive":1,"corp":"8","model":"hikes_ipc","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":1,"streamtype":0,"realrtspurl":"rtsp://192.168.0.10:7554/DevAor=11010000001310000029"},
+ {"restype":1,"publicid":"11010000001310000030","name":"大华测试摄像机179-1","alive":1,"corp":"1","model":"dahua_IPC","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":1,"streamtype":0,"realrtspurl":"rtsp://192.168.0.10:7554/DevAor=11010000001310000030"}
+ ]
+ }
+
+
+资源组展现方式:(完全采用下级注册资源展现方式)
+ 本级平台的(Svrtbl)
+ --注册设备1(VSSDevtbl)
+ --注册设备下的资源组1 (VSSChannelTbl)
+ --通道资源 (VSSChannelTbl)
+ --注册设备下的资源组2 (VSSChannelTbl)
+ --通道资源 (VSSChannelTbl)
+ --注册设备2(VSSDevtbll)
+ --通道资源 (VSSChannelTbl)
+
+资源树展现:
+ 一级资源组(国标服务名称:http://192.168.0.10:8060/vssconfig/get_platform_server)
+ --二级资源组 (设备信息:http://192.168.0.10:8060/vssconfig/get_all_device/{pageno})
+ --三级资源组 (restype=2 通道资源:http://192.168.0.10:8060/vssconfig/get_all_channel/{devpubid}/node/{pageno})
+ --通道资源 (restype=1 通道资源:http://192.168.0.10:8060/vssconfig/get_all_channel/{devpubid}/node/{pageno})
+ --二级资源组 (设备信息:http://192.168.0.10:8060/vssconfig/get_all_device/{pageno})
+ --通道资源 (restype=1 通道资源:http://192.168.0.10:8060/vssconfig/get_all_channel/{devpubid}/node/{pageno})
+
+
+8.获取平台的所有通道资源信息 (不包含资源组) ----> 如果只接入IPC设备, 建议采用该接口获取资源信息
+
+ 字段说明:
+ "pageno": (数字) 指定获取第几页,第一次为1,返回总页数,总条数
+
+ "errcode: (数字) 返回状态值,0表示正常状态,其他见错误码(下同)
+ "errdesc": (字符串) 错误码描述(下同)
+ "totalsize": (数字) 设备总数 (下同)
+ "onepagesize": (数字) 每页大小 (下同)
+ "totalpage": (数字) 总分页数 (下同)
+ "pageno": (数字) 当前第几页(下同)
+ "count": (数字) 当前有几条数据(下同)
+ "data": 设备信息,参照“1.设备管理”定义
+
+ "restype": (数字) 1-通道资源 2-资源组
+ "publicid": (字符串) 国标资源通道20位id (用于请求视频、控制等操作)
+ "name": (字符串) 资源名称
+ "alive": (数字) 状态 0:不在线 1:在线
+ "corp": (字符串) 厂商
+ "owner": (字符串) 设备归属
+ "civilcode": (字符串) 行政区域 (可以按照行政区域进行划分资源组)
+ "address": (字符串) 地址
+ "devpubid": (字符串) 通道的设备id
+ "parentid": (字符串) 父节点id
+ "ip": (字符串) ip地址
+ "port": (数字) 端口
+ "longitude": (数字) 经度
+ "latitude": (数字) 纬度
+ "ptztype": (数字) 控制类型 1-球机;2-半球;3-固定枪机;4-遥控枪机;
+ "streamtype": (数字) 码流类型 0-H264;1-MPEG2;2-MPEG4;3-SVAC;4-3GP;5-H265;
+ "realrtspurl":(字符串) 实时视频的rtsp地址
+
+请求:
+ URL: http://192.168.0.10:8060/vssconfig/get_platform_all_channel/{pageno}
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误,无数据; 如果errcode等于0,那么数据里面的每项都是必填项
+ {
+ "errcode": 0 ,"errdesc": "OK" ,"totalsize": 3 ,"onepagesize": 100 ,"totalpage": 1 ,"pageno": 1, "count":13,"data":
+ [
+ {"restype":1,"publicid":"11010000001310000004","name":"rtsp_69_1","alive":1,"corp":"51","model":"rtsplib_ipc","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":104.08116,"latitude":30.68946,"ptztype":3,"streamtype":0,"realrtspurl":"rtsp://192.168.0.10:7554/DevAor=11010000001310000004"},
+ {"restype":1,"publicid":"11010000001310000029","name":"成都分公司","alive":1,"corp":"8","model":"hikes_ipc","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":1,"streamtype":0,"realrtspurl":"rtsp://192.168.0.10:7554/DevAor=11010000001310000029"},
+ {"restype":1,"publicid":"11010000001310000030","name":"大华测试摄像机179-1","alive":1,"corp":"1","model":"dahua_IPC","owner":"11010000002000000001","civilcode":"1101","address":"","devpubid":"11010000002000000001","parentid":"11010000002160000009","ip":"","port":0,"longitude":0.0,"latitude":0.0,"ptztype":1,"streamtype":0,"realrtspurl":"rtsp://192.168.0.10:7554/DevAor=11010000001310000030"}
+ ]
+ }
+
+9.获取单个设备或则通道的信息
+
+ 字段说明:
+ "publicid": (字符串) 设备或则通道信息
+
+ "restype": (数字) 1-通道资源 2-资源组
+ "publicid": (字符串) 国标资源通道20位id (用于请求视频、控制等操作)
+ "name": (字符串) 资源名称
+ "alive": (数字) 状态 0:不在线 1:在线
+ "corp": (字符串) 厂商
+ "owner": (字符串) 设备归属
+ "civilcode": (字符串) 行政区域 (可以按照行政区域进行划分资源组)
+ "address": (字符串) 地址
+ "devpubid": (字符串) 通道的设备id
+ "parentid": (字符串) 父节点id
+ "ip": (字符串) ip地址
+ "port": (数字) 端口
+ "longitude": (数字) 经度
+ "latitude": (数字) 纬度
+ "ptztype": (数字) 控制类型 1-球机;2-半球;3-固定枪机;4-遥控枪机;
+ "streamtype": (数字) 码流类型 0-H264;1-MPEG2;2-MPEG4;3-SVAC;4-3GP;5-H265;
+ "realrtspurl":(字符串) 实时视频的rtsp地址
+
+请求:
+ URL: http://192.168.0.10:8060/vssconfig/get_device_info/{publicid}
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误,无数据; 如果errcode等于0,那么数据里面的每项都是必填项
+ {
+ "errcode":0,
+ "errdesc":"OK",
+ "restype":1,
+ "publicid":"11010000001310000004",
+ "name":"rtsp_69_1",
+ "alive":1,
+ "corp":"51",
+ "model":"rtsplib_ipc",
+ "owner":"11010000002000000001",
+ "civilcode":"1101","address":"",
+ "devpubid":"11010000002000000001",
+ "parentid":"11010000002160000009",
+ "ip":"",
+ "port":0,
+ "longitude":104.08116,
+ "latitude":30.68946,
+ "ptztype":3,
+ "streamtype":0,
+ "realrtspurl":"rtsp://192.168.0.10:7554/DevAor=11010000001310000004"
+ }
+
+
+
+二、通信接口:
+ 视频服务器作为httpserver。
+
+1. PTZ云台控制
+ 字段说明:
+ "channelid": (字符串) 通道20位编号
+ "ptztype": (字符串) 控制类型:上"up",下"down",左"left",右"right",左上"leftup",左下"leftdown",右上"rightup",右下"rightdown",镜头近"zoomin",镜头远"zoomout",
+ 焦距远"focusfar",焦距近"focusnear", 设置预置位"setpos",调预置位"callpos",停止"stop"
+ "ptzparam": (数字) 参数,速度范围为1-255
+
+请求:
+ URL: http://192.168.0.10:8088/vss/ptz/{ptztype}/{ptzparam}/{channelid}
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误
+ {"errcode":0,"errdesc":"OK"}
+
+
+2. 录像查询
+ 字段说明:
+
+ "channelid": (字符串) 通道20位编号
+ "begintime": (字符串) "YYYY-MM-DDTHH:MM:SS": 年月日时分秒; 开始时间,注意不全0
+ "endtime": (字符串) "YYYY-MM-DDTHH:MM:SS": 年月日时分秒; 结束时间,注意不全0
+
+ "data": 录像查询信息
+ "begintime": (字符串) "YYYY-MM-DDTHH:MM:SS": 年月日时分秒; 开始时间,注意不全0
+ "endtime": (字符串) "YYYY-MM-DDTHH:MM:SS": 年月日时分秒; 结束时间,注意不全0
+ "filename": (字符串) 文件名,不一定用,如果根据文件回放才用,根据时间回放不用
+ "type": (字符串)录像类型 all,time,alarm,manual
+
+请求:
+ URL: http://192.168.0.10:8088/vss/history_search/{begintime}/{endtime}/{channelid}
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误,无数据; 如果errcode等于0,那么数据里面的每项都是必填项
+ {"errcode":0,"errdesc":"OK","totalsize":3,"onepagesize":100,"totalpage":1,"pageno":1,"count":3,"data":
+ [
+ {"channelid":11000000001325000001,"begintime":"2017-09-19T15:13:24","endtime":"2017-09-19T15:38:34","filename":"101101001_0","type":"all"},
+ {"channelid":11000000001325000001,"begintime":"2017-09-19T15:56:52","endtime":"2017-09-19T16:03:10","filename":"101101001_2","type":"all"},
+ {"channelid":11000000001325000001,"begintime":"2017-09-19T16:06:42","endtime":"2017-09-19T17:28:55","filename":"101101001_4","type":"all"}
+ ]
+ }
+
+3. 设备控制
+ 字段说明:
+ "channelid": (字符串) 通道或者设备20位编号
+ "devctrltype": (字符串) "record":录像开启和停止-通道id "guard":布放和撤防-报警通道id "reboot":设备重启-设备id "keyfame":强制关键帧-通道id
+ "param": (字符串) "start"启动,"stop"停止
+
+请求:
+ URL: http://192.168.0.10:8060/vss/device_ctrl/{devctrltype}/{channelid}/{param}
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误
+ {"errccode":0,"errdesc":"OK"}
+
+4. 重新获取资源目录
+ 字段说明:
+ "devpubid": (字符串) 设备20位编号
+
+请求:
+ URL: http://192.168.0.10:8060/vss/get_catalog/{devpubid}
+
+ HTTP Method: GET
+
+返回:
+ 其中errcode为必填项,errcode小于0表示错误
+ {"errccode":0,"errdesc":"OK"}
+
+
+三、报警通知
+ 视频服务器作为httpclient
+
+ 方法说明:
+
+
+ 字段说明:
+ "channelid": (字符串) 通道20位编号
+ "alarmtype": (数字) 报警类型(后续根据需求定义)
+ "alarmtime": (字符串) "YYYY-MM-DDTHH:MM:SS": 年月日 时分秒; 报警时间
+ "alarmdesc": (字符串) 报警描述
+ "longitude": (字符串) 经度
+ "latitude": (字符串) 纬度
+
+请求:
+ URL: http://192.168.0.10:8088/vssalarm
+
+
+ HTTP Method: POST
+
+ Body:
+ 所有字段都为必填项
+ {"channelid":"11000000001325000001","alarmtype":1,"alarmtime":"2017-09-19T15:13:24","alarmdesc":"fire","longitude":"10.01123","latitude":"20.34221"}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
--
Gitblit v1.8.0