登录并获取鉴权信息
1.接口描述
授权类型 |
APPSIGN |
协议 |
HTTP |
请求方法 |
Post |
域名(环境变量中获取) |
30.42.82.42(集群服务地址) |
路径 |
/vision/edge/console/user/login |
2.入参说明
入参名称 |
数据类型 |
是否必须 |
入参示例 |
入参描述 |
userName |
string |
是 |
test_model1 |
用户名 |
password |
string |
是 |
1C35315598694F |
密码 |
3.出参列表
出参名称 |
数据类型 |
出参描述 |
code |
整形 |
响应码, 200: 成功 |
systemInitializeGuideFinish |
字符串 |
系统初始化标志位(暂未使用,可忽略)
|
token |
字符串 |
令牌信息 |
userId |
string |
用户ID |
message |
string |
返回信息 |
4.请求示例
public static void main(String[] args) {
geturl();//测试发送请求
}
private Logger logger = LoggerFactory.getLogger("iot_edge");
private static final String PATH_LOGIN_HOST = "/vision/edge/console/user/login";
private static final String apiGatewayDomain = "30.42.82.42";
private static final int port = 8080;
/**
* 发送HttpPost请求
* <p>
* <p>
* json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
*
* @return 成功:返回json字符串<br/>
*/
public static String geturl() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("userName", "admin");
jsonObject.put("password", "admin");
String params = String.valueOf(jsonObject);
String url = "http://" + apiGatewayDomain + ":" + port + PATH_LOGIN_HOST;
String reString = postUtil.post(url, params);
System.out.println(url);
System.out.println(reString);
return reString;
}
5.返回结果示例 JSON
{
"code": 200,
"data": {
"systemInitializeGuideFinish": false,
"token": "cc8579b8be7711e991750242ac140009",
"userId": "1"
},
"message": "success"
}
6.失败返回结果示例 JSON
{
"code": 500,
"data":
},
"message": "failed"
}
新增算法任务
1.接口描述
鉴权方式
|
Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”} |
协议 |
HTTP |
请求方法 |
Post |
域名(环境变量中获取) |
30.42.82.42(集群服务地址) |
路径 |
/vision/edge/console/algorithm/createAlgoJob |
2.入参说明
入参名称 |
数据类型 |
是否必须 |
入参示例 |
入参描述 |
jobName |
string |
是 |
test_model1 |
任务名称 |
jobDesc |
string |
否 |
1C35315598694F |
string |
deviceId |
int |
是 |
01 |
IPC的设备ID |
algoName |
string |
是 |
personVehicleDetect |
算法名称,当前支持的算法名称有”personVehicleDetect”,”regionalInvasion”,”vehiclesRecognize”, “faceRecognize”, “keyAreaOccupation”(人车检测、区域入侵、车牌识别、人脸检测、重点区域占用) |
name |
string |
是 |
ipcName |
IPC名称 |
3.出参列表
出参名称 |
数据类型 |
出参描述 |
code |
整形 |
响应码, 200: 成功 |
message |
string |
返回信息 |
4.请求示例
public static void main(String[] args) {
geturl();//测试发送请求
}
private Logger logger = LoggerFactory.getLogger("iot_edge");
private static final String PATH_LOGIN_HOST = "/vision/edge/console/algorithm/createAlgoJob";
private static final String apiGatewayDomain = "30.42.82.42";
private static final int port = 8080;
/**
* 发送HttpPost请求
* <p>
* <p>
* json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
*
* @return 成功:返回json字符串<br/>
*/
public static String geturl() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("jobName", "人车检测");
jsonObject.put("jobDesc", "111");
jsonObject.put("deviceId", 318);
jsonObject.put("algoName", "personVehicleDetect");
jsonObject.put("name", "hik");
String params = String.valueOf(jsonObject);
String url = "http://" + apiGatewayDomain + ":" + port + PATH_LOGIN_HOST;
String reString = postUtil.post(url, params);
System.out.println(url);
System.out.println(reString);
return reString;
}
5.返回结果示例 JSON
{
"code": 200,
"message": "success"
}
6.失败返回结果示例 JSON
{
"code": 500,
"data":
},
"message": "failed"
}
删除算法任务
1.接口描述
鉴权方式 |
Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”} |
协议 |
HTTP |
请求方法 |
Post |
域名(环境变量中获取) |
30.42.82.42(集群服务地址) |
路径 |
/vision/edge/console/algorithm/deleteAlgoJob |
2.入参说明
入参名称 |
数据类型 |
是否必须 |
入参示例 |
入参描述 |
jobId |
int |
是 |
01 |
任务号 |
3.出参列表
出参名称 |
数据类型 |
出参描述 |
code |
整形 |
响应码, 200: 成功 |
message |
string |
返回信息 |
4.请求示例
public static void main(String[] args) {
geturl();//测试发送请求
}
private Logger logger = LoggerFactory.getLogger("iot_edge");
private static final String PATH_LOGIN_HOST = "/vision/edge/console/algorithm/deleteAlgoJob";
private static final String apiGatewayDomain = "30.42.82.42";
private static final int port = 8080;
/**
* 发送HttpPost请求
* <p>
* <p>
* json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
*
* @return 成功:返回json字符串<br/>
*/
public static String geturl() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("jobId", 13);
String params = String.valueOf(jsonObject);
String url = "http://" + apiGatewayDomain + ":" + port + PATH_LOGIN_HOST;
String reString = postUtil.post(url, params);
System.out.println(url);
System.out.println(reString);
return reString;
}
5.返回结果示例 JSON
{
"code": 200,
"message": "success"
}
6.失败返回结果示例 JSON
{
"code": 500,
"data":
},
"message": "failed"
}
查询算法任务
1.接口描述
鉴权方式 |
Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”} |
协议 |
HTTP |
请求方法 |
Post |
域名(环境变量中获取) |
30.42.82.42(集群服务地址) |
路径 |
/vision/edge/console/algorithm/queryJobList |
2.入参说明
入参名称 |
数据类型 |
是否必须 |
入参示例 |
入参描述 |
size |
int |
是 |
10 |
每页显示的算法任务数 |
offset |
int |
是 |
121 |
当前的算法任务索引 |
3.出参列表
参数 |
是否必须 |
类型 |
说明 |
code |
是 |
int |
错误码 |
message |
是 |
string |
错误信息 |
algoName |
是 |
string |
算法名称 |
createTime |
是 |
int |
创建时间 |
deviceId |
是 |
int |
设备ID |
jobDesc |
是 |
string |
任务描述 |
jobId |
是 |
int |
任务ID |
jobName |
是 |
string |
任务名称 |
name |
是 |
string |
IPC名称 |
status |
是 |
int |
任务状态,0表示关闭,1表示开启 |
updateTime |
是 |
int |
更新时间 |
totalNum |
是 |
int |
任务的个数 |
4.请求示例
public static void main(String[] args) {
geturl();//测试发送请求
}
private Logger logger = LoggerFactory.getLogger("iot_edge");
private static final String PATH_LOGIN_HOST = "/vision/edge/console/algorithm/queryJobList";
private static final String apiGatewayDomain = "30.42.82.42";
private static final int port = 8080;
/**
* 发送HttpPost请求
* <p>
* <p>
* json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
*
* @return 成功:返回json字符串<br/>
*/
public static String geturl() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("offset", 0);
jsonObject.put("size", 10);
String params = String.valueOf(jsonObject);
String url = "http://" + apiGatewayDomain + ":" + port + PATH_LOGIN_HOST;
String reString = postUtil.post(url, params);
System.out.println(url);
System.out.println(reString);
return reString;
}
5.返回结果示例 JSON
{
"code": 200,
"data": {
"list": [{
"algoName": "personVehicleDetect",
"createTime": 1564477661000,
"deviceId": 318,
"jobDesc": "",
"jobId": 15,
"jobName": "人车检测",
"name": "hik",
"status": 0,
"updateTime": 1564477661000
}],
"totalNum": 1
},
"message": "success"
}
6.失败返回结果示例 JSON
{
"code": 500,
"data":
},
"message": "failed"
}
添加设备
1.接口描述
鉴权方式 |
Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”} |
协议 |
HTTP |
请求方法 |
Post |
域名(环境变量中获取) |
30.42.82.42(集群服务地址) |
路径 |
/vision/edge/console/device/add |
2.入参说明
参数 |
是否必须 |
类型 |
说明 |
type |
是 |
string |
当前的设备索引 |
name |
是 |
string |
每页显示的设备数 |
protocol |
是 |
string |
协议 |
onvifUsr |
是 |
string |
ONVIF登录名 |
onvifSecret |
是 |
string |
ONVIF登录密码 |
ip |
是 |
string |
IPC的IP地址 |
port |
是 |
string |
IPC的端口号 |
extraInfo |
否 |
string |
用户自定义信息 |
3.出参列表
参数 |
是否必须 |
类型 |
说明 |
code |
是 |
int |
错误码 |
cloudStatus |
是 |
string |
云端连接状态,取值为”INACTIVATED”和”ACTIVATED”,分别表示未激活和激活 |
deviceId |
是 |
int |
设备的ID |
name |
是 |
string |
设备名称 |
protocol |
是 |
string |
接入协议,当前支持”ONVIF”,”GB” |
status |
是 |
string |
本地连接状态,取值为”ONLINE”和”OFFLINE”,分别表示在线和离线 |
type |
是 |
string |
接入类型,取值为”IPC”和”NVR” |
message |
是 |
string |
错误信息 |
4.请求示例
public static void main(String[] args) {
geturl();//测试发送请求
}
private Logger logger = LoggerFactory.getLogger("iot_edge");
private static final String PATH_LOGIN_HOST = "/vision/edge/console/device/add";
private static final String apiGatewayDomain = "30.42.82.42";
private static final int port = 8080;
/**
* 发送HttpPost请求
* <p>
* <p>
* json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
*
* @return 成功:返回json字符串<br/>
*/
public static String geturl() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("type", "IPC");
jsonObject.put("name", "hik");
jsonObject.put("protocol", "ONVIF");
jsonObject.put("onvifUsr", "admin");
jsonObject.put("onvifSecret", "admin");
jsonObject.put("ip", apiGatewayDomain);
jsonObject.put("port", "8080");
jsonObject.put("extraInfo", "value");
String params = String.valueOf(jsonObject);
String url = "http://" + apiGatewayDomain + ":" + port + PATH_LOGIN_HOST;
String reString = postUtil.post(url, params);
System.out.println(url);
System.out.println(reString);
return reString;
}
5.返回结果示例 JSON
{
"code": 200,
"data": {
"device": {
"cloudStatus": "INACTIVATED",
"deviceId": 2,
"name": "hik",
"protocol": "ONVIF",
"status": "RECONNECT",
"type": "IPC"
}
},
"message": "success"
}
6.失败返回结果示例 JSON
{
"code": 500,
"data":
},
"message": "failed"
}
删除设备
1.接口描述
鉴权方式 |
Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”} |
协议 |
HTTP |
请求方法 |
Post |
域名(环境变量中获取) |
30.42.82.42(集群服务地址) |
路径 |
/vision/edge/console/device/delete |
2.入参说明
参数 |
是否必须 |
类型 |
说明 |
deviceId |
是 |
int |
设备的ID |
3.出参列表
参数 |
是否必须 |
类型 |
说明 |
code |
是 |
int |
错误码 |
message |
是 |
string |
错误信息 |
4.请求示例
public static void main(String[] args) {
geturl();//测试发送请求
}
private Logger logger = LoggerFactory.getLogger("iot_edge");
private static final String PATH_LOGIN_HOST = "/vision/edge/console/device/delete";
private static final String apiGatewayDomain = "30.42.82.42";
private static final int port = 8080;
/**
* 发送HttpPost请求
* <p>
* <p>
* json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
*
* @return 成功:返回json字符串<br/>
*/
public static String geturl() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("deviceId", 2);
String params = String.valueOf(jsonObject);
String url = "http://" + apiGatewayDomain + ":" + port + PATH_LOGIN_HOST;
String reString = postUtil.post(url, params);
System.out.println(url);
System.out.println(reString);
return reString;
}
5.返回结果示例 JSON
{
"code": 200,
"message": "success"
}
6.失败返回结果示例 JSON
{
"code": 500,
"data":
},
"message": "failed"
}
查询设备列表
1.接口描述
鉴权方式 |
Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”} |
协议 |
HTTP |
请求方法 |
Post |
域名(环境变量中获取) |
30.42.82.42(集群服务地址) |
路径 |
/vision/edge/console/device/list |
2.入参说明
参数 |
是否必须 |
类型 |
说明 |
size |
是 |
int |
每页显示的设备数 |
offset |
是 |
int |
当前的设备索引 |
3.出参列表
参数 |
是否必须 |
类型 |
说明 |
code |
是 |
int |
错误码 |
cloudStatus |
是 |
string |
云端连接状态,取值为”INACTIVATED”和”ACTIVATED”,分别表示未激活和激活 |
deviceId |
是 |
int |
设备的ID |
name |
是 |
string |
设备名称 |
ip |
是 |
string |
设备IP地址 |
protocol |
是 |
string |
接入协议,当前支持”ONVIF”,”GB” |
status |
是 |
string |
本地连接状态,取值为”ONLINE”和”OFFLINE”,分别表示在线和离线 |
type |
是 |
string |
接入类型,取值为”IPC”和”NVR” |
message |
是 |
string |
错误信息 |
4.请求示例
public static void main(String[] args) {
geturl();//测试发送请求
}
private Logger logger = LoggerFactory.getLogger("iot_edge");
private static final String PATH_LOGIN_HOST = "/vision/edge/console/device/list";
private static final String apiGatewayDomain = "30.42.82.42";
private static final int port = 8080;
/**
* 发送HttpPost请求
* <p>
* <p>
* json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
*
* @return 成功:返回json字符串<br/>
*/
public static String geturl() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("size", 256);
jsonObject.put("offset", 0);
String params = String.valueOf(jsonObject);
String url = "http://" + apiGatewayDomain + ":" + port + PATH_LOGIN_HOST;
String reString = postUtil.post(url, params);
System.out.println(url);
System.out.println(reString);
return reString;
}
5.返回结果示例 JSON
{
"code": 200,
"data": {
"list": [
{
"cloudStatus": "INACTIVATED",
"deviceId": 6,
"name": "aihua111",
"params": {
"device_id": 6,
"gmt_create": "Mon, 23 Sep 2019 18:16:23 GMT",
"gmt_modified": "Mon, 23 Sep 2019 18:16:23 GMT",
"id": 6,
"ip": "192.168.1.111",
"onvif_secret": "admin123",
"onvif_user": "admin",
"params": "{\"onvifUsr\": \"admin\", \"onvifSecret\": \"admin123\", \"ip\": \"192.168.1.111\", \"port\": \"80\"}",
"port": 80
},
"protocol": "ONVIF",
"status": "ONLINE",
"type": "IPC",
"extraInfo": ""
}
],
"totalNum": 1
},
"message": "success"
}
6.失败返回结果示例 JSON
{
"code": 500,
"data":
},
"message": "failed"
}
查询单个设备列表
1.接口描述
鉴权方式 |
Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”} |
协议 |
HTTP |
请求方法 |
Post |
域名(环境变量中获取) |
30.42.82.42(集群服务地址) |
路径 |
vision/edge/console/device/get |
2.入参说明
参数 |
是否必须 |
类型 |
说明 |
deviceId |
是 |
int |
设备ID信息 |
3.出参列表
参数 |
是否必须 |
类型 |
说明 |
code |
是 |
int |
错误码 |
cloudStatus |
是 |
string |
云端连接状态,取值为”INACTIVATED”和”ACTIVATED”,分别表示未激活和激活 |
deviceId |
是 |
int |
设备的ID |
name |
是 |
string |
设备名称 |
ip |
是 |
string |
设备IP地址 |
protocol |
是 |
string |
接入协议,当前支持”ONVIF”,”GB” |
status |
是 |
string |
本地连接状态,取值为”ONLINE”和”OFFLINE”,分别表示在线和离线 |
type |
是 |
string |
接入类型,取值为”IPC”和”NVR” |
message |
是 |
string |
|
4.请求示例
public static void main(String[] args) {
geturl();//测试发送请求
}
private Logger logger = LoggerFactory.getLogger("iot_edge");
private static final String PATH_LOGIN_HOST = "/vision/edge/console/device/get";
private static final String apiGatewayDomain = "30.42.82.42";
private static final int port = 8080;
/**
* 发送HttpPost请求
* <p>
* <p>
* json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
*
* @return 成功:返回json字符串<br/>
*/
public static String geturl() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("deviceId", 1);
String params = String.valueOf(jsonObject);
String url = "http://" + apiGatewayDomain + ":" + port + PATH_LOGIN_HOST;
String reString = postUtil.post(url, params);
System.out.println(url);
System.out.println(reString);
return reString;
}
5.返回结果示例 JSON
{
"code": 200,
"data":
{
"cloudStatus": "INACTIVATED",
"deviceId": 1,
"name": "aihua111",
"params": {
"device_id": 1,
"gmt_create": "Mon, 23 Sep 2019 18:16:23 GMT",
"gmt_modified": "Mon, 23 Sep 2019 18:16:23 GMT",
"id": 6,
"ip": "192.168.1.111",
"onvif_secret": "admin123",
"onvif_user": "admin",
"params": "{\"onvifUsr\": \"admin\", \"onvifSecret\": \"admin123\", \"ip\": \"192.168.1.111\", \"port\": \"80\"}",
"port": 80
},
"protocol": "ONVIF",
"status": "ONLINE",
"type": "IPC",
"extraInfo": ""
},
"message": "success"
}
6.失败返回结果示例 JSON
{
"code": 500,
"data":
},
"message": "failed"
}
区域入侵算法任务配置
1.接口描述
鉴权方式 |
Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”} |
协议 |
HTTP |
请求方法 |
Post |
域名(环境变量中获取) |
30.42.82.42(集群服务地址) |
路径 |
/vision/edge/console/algorithm/createAlgoJob |
2.入参说明
参数 |
是否必须 |
类型 |
说明 |
jobName |
是 |
string |
任务名称 |
jobDesc |
否 |
string |
任务描述 |
deviceId |
是 |
int |
IPC的设备ID |
algoName |
是 |
string |
算法名称:keyAreaOccupation(重点区域占用) |
areaIndex |
是 |
int |
区域索引 |
areaPoint |
是 |
string |
区域的坐标点信息 |
areaDirection |
是 |
string |
区域的方向 |
targetType |
是 |
string |
目标类型 |
areaType |
是 |
string |
区域类型 |
name |
是 |
string |
IPC名称 |
firstDuration |
是 |
int |
初次告警时间间隔 |
alertDuration |
是 |
int |
间隔告警时间 |
3.请求示例
public static void main(String[] args) {
geturl();//测试发送请求
}
private Logger logger = LoggerFactory.getLogger("iot_edge");
private static final String PATH_LOGIN_HOST = "/vision/edge/console/algorithm/createAlgoJob";
private static final String apiGatewayDomain = "30.42.82.42";
private static final int port = 8080;
/**
* 发送HttpPost请求
* <p>
* <p>
* json字符串,例如: "{ \"id\":\"12345\" }" ;其中属性名必须带双引号<br/>
*
* @return 成功:返回json字符串<br/>
*/
public static String geturl() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("jobName", "1231");
jsonObject.put("deviceId", 1);
jsonObject.put("key", "value");
...
String params = String.valueOf(jsonObject);
String url = "http://" + apiGatewayDomain + ":" + port + PATH_LOGIN_HOST;
String reString = postUtil.post(url, params);
System.out.println(url);
System.out.println(reString);
return reString;
}
4.返回结果示例 JSON
{
"jobName": "重点区域占用",
"jobDesc": "",
"deviceId": 1,
"algoName": "keyAreaOccupation",
"algoParam": {
"detectArea": [{
"areaIndex": 1,
"areaPoint": [{
"point": [0.105, 0.2167]
}, {
"point": [0.1605, 0.864]
}, {
"point": [0.5269, 0.9283]
}, {
"point": [0.3782, 0.2093]
}, {
"point": [0.2008, 0.139]
}],
"areaDirection": 2,
"targetType": 2,
"areaType": 2
}],
"firstDuration": 60,
"alertDuration": 3600
},
"name": "hik"
}
5.失败返回结果示例 JSON
{
"code": 500,
"data":
},
"message": "failed"
}
其他算法任务配置
- 接口描述:指定其他算法任务(非区域入侵或重点区域占用)算法任务配置
- 鉴权方式: Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”}
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/algorithm/createAlgoJob
- 参数说明:
参数 |
是否必须 |
类型 |
说明 |
jobName |
是 |
string |
任务名称 |
jobDesc |
否 |
string |
任务描述 |
deviceId |
是 |
int |
IPC的设备ID |
algoName |
是 |
string |
算法名称,当前支持: “personVehicleDetect”, “vehiclesRecognize”, “faceRecognize”, “keyAreaOccupation” |
algoParam |
是 |
string |
填入””即可 |
name |
是 |
string |
IPC名称 |
{
"jobName": "区域入侵",
"jobDesc": "",
"deviceId": 1,
"algoName": "personVehicleDetect",
"algoParam": "",
"name": "hik"
}
人脸识别算法图片推理
- 接口描述:传入人脸图片进行人脸检测和特征提取
- 鉴权方式:Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”}
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/aibiz/image/inference
- 参数说明:
参数 |
是否必须 |
类型 |
说明 |
type |
是 |
string |
图片类型,当前的值为”local”表示本地图片,”url”表示网络图片 |
algorithm |
是 |
string |
算法名称,填写”faceRecognize” |
data |
是 |
string |
文件名,当type为local时填写本地图片的绝对或相对路径;当type为url时填写图片的url地址 |
示例
{
"type": "url",
"algorithm": "faceRecognize",
"data": "http://www.xxx.com/test.jpeg"
}
响应参数
参数 |
是否必须 |
类型 |
说明 |
message |
是 |
string |
接口返回结果信息 |
result |
是 |
int |
接口返回结果的错误码 |
algorithm_code |
是 |
int |
算法结果的错误码 |
algorithm_message |
是 |
string |
算法结果的信息 |
+rect |
是 |
number[4] |
检测到的人脸的坐标信息 |
+alarmType |
是 |
int |
报警类型 |
+eventTime |
是 |
int |
人脸检测时间 |
+captureTime |
是 |
int |
图片采集时间 |
+track_id |
是 |
int |
跟踪ID |
+conf |
是 |
float |
人脸检测的置信度 |
+frame_index |
是 |
int |
人脸检测所在的帧号 |
+ossUrl |
是 |
string |
存储小视频的oss的url(暂未使用) |
+ltlId |
是 |
string |
暂未使用 |
+feature |
是 |
number[512] |
人脸特征值,512维 |
+blur_score |
是 |
float |
人脸的模糊度得分 |
+pose_score |
是 |
float |
人脸的姿态得分 |
+land_mark |
是 |
number[6] |
人脸特征点坐标 |
返回示例
{
"message": "success",
"result": 0,
"algorithm_code": 0,
"algorithm_message": "success",
"data": [{
"rect": [0.387, 0.2146, 0.245, 0.4073],
"alarmType": 10007,
"eventTime": 1573120006201,
"captureTime": 1573120006201,
"track_id": -1,
"conf": 0.9971,
"frame_index": -1,
"ossUrl": "",
"ltlId": "",
"feature": [0.7662, 0.2966, 0.0483, 0.4999, 0.8, 0.3786, 0.5138, 0.001, -0.2762,....
"blur_score": -49.6351
"pose_score": 69.8145,
"land_mark": []
}]
}
算法任务开关
开启算法任务
- 接口描述:开启算法任务
- 鉴权方式: Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”}
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/algorithm/startAlgoJob
- 参数说明:
参数 |
是否必须 |
类型 |
说明 |
jobId |
是 |
int |
任务id |
示例
{
"jobId": 13
}
- 响应参数
参数 |
是否必须 |
类型 |
说明 |
code |
是 |
int |
错误码 |
message |
是 |
string |
错误信息 |
示例
{
"code": 200,
"message": "success"
}
关闭算法任务
- 接口描述:关闭算法任务
- 鉴权方式: Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”}
- 请求方式:POST
- 请求地址:http://30.42.82.42::8080/vision/edge/console/algorithm/stopAlgoJob
- 参数说明:
参数 |
是否必须 |
类型 |
说明 |
jobId |
是 |
int |
任务id |
示例
{
"jobId": 13
}
- 响应参数
参数 |
是否必须 |
类型 |
说明 |
code |
是 |
int |
错误码 |
message |
是 |
string |
错误信息 |
示例
{
"code": 200,
"message": "success"
}
算法结果上报
- 接口描述:指定区域入侵的坐标信息创建区域入侵算法任务
- 鉴权方式: Cookie:{“token”: “cc8579b8be7711e991750242ac140009”, “userId”: “1”}
- 请求方式:GET
- 请求地址http://30.42.82.42::8080/vision/edge/console/algorithm/noticeAlgoResult/15
- 参数说明:无
- 响应参数:
参数 |
是否必须 |
类型 |
说明 |
deviceId |
是 |
string |
任务名称 |
type |
是 |
string |
任务描述 |
pictureUrl |
是 |
string |
原始图地址 |
cutoutUrl |
是 |
string |
抠图地址 |
pictureId |
是 |
string |
抓拍图id |
taskId |
是 |
string |
任务id |
AlarmType |
是 |
int |
报警类型 |
Algorithm |
是 |
string |
算法名称 |
ProductKey |
是 |
string |
产品秘钥 |
DeviceName |
是 |
string |
设备名称 |
alarmType |
是 |
int |
报警类型 |
areaIndex |
是 |
int |
区域索引 |
areaPoint |
是 |
string |
区域点坐标 |
type |
是 |
string |
检测类型 |
rect |
是 |
number[4] |
检测到的坐标 |
conf |
是 |
float |
置信度 |
track_id |
是 |
int |
跟踪id |
AlarmPicID |
是 |
string |
报警图片id |
- 示例
{
"transParams": {
"deviceId": 318,
"type": "IntelligentAlarmEvent",
"pictureUrl": "http://192.168.1.179:11005/static/images/T20_2019_07_30_20_46_20_732757.jpg",
"cutoutUrl": "http://192.168.1.179:11005/static/images/0_T20_2019_07_30_20_46_20_732757.jpg",
"pictureId": "96fc235be4034b4595564431b3ab03d5",
"taskId": "20"
},
"payload": {
"AlarmType": 10010,
"Algorithm": "regionalInvasion",
"ProductKey": "",
"DeviceName": "",
"Data": "{
"alarmType": 10010,
"areaIndex": 1,
"areaPoint": [{
"point": [0.056539948453608255, 0.08247422680412371]
}, {
"point": [0.9452319587628867, 0.08247422680412371]
}, {
"point": [0.9452319587628867, 0.9561855670103093]
}, {
"point": [0.056539948453608255, 0.9561855670103093]
}],
"type": "person",
"rect": [0.58984375, 0.16111111111111112, 0.6390625, 0.2569444444444444],
"conf": 0.6067625284194946,
"track_id": 0
}",
"AlarmPicID": "96fc235be4034b4595564431b3ab03d5"
}
}
算法报警抓图上报
- 接口描述:获取算法报警抓拍图
- 鉴权方式: 无
- 请求方式:GET
- 请求地址:
http://30.42.82.42::11005/static/images/0_T20_2019_07_30_20_46_20_732757.jpg
- 参数说明:上述的请求地址是根据上面的算法结果上报的JSON字段中解析获得
查询支持的算法
- 接口描述:查询支持的算法
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/algorithm/querySupportAlgos
- 参数说明:
示例
{
}
- 响应参数:
示例
{
"code": 200,
"data": [
{
"algoName": "personVehicleDetect",
"aliasName": "人车检测",
"params": [
{
"Annotation": false
}
],
"platform": "INTEL"
},
{
"algoName": "regionalInvasion",
"aliasName": "区域入侵",
"params": [
{
"max": "86400",
"min": "60",
"name": "alertDuration",
"type": "int"
},
{
"max": "86400",
"min": "60",
"name": "firstDuration",
"type": "int"
},
{
"Annotation": true
}
],
"platform": "INTEL"
}
],
"message": "success"
}
获取网络配置
- 接口描述:获取网络配置接口
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/system/getNetwork
返回示例
{
"code": 200,
"data": {
"ipAddr": "192.168.31.12",
"netMask": "255.255.255.0",
"getwayIp": "192.168.31.1"
},
"message": "success"
}
配置网络
- 接口描述:获取配置网络的信息
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/system/setNetwork
- 参数说明:
示例
{
"ipAddr":xxxx,
"netmask":xxxx,
"gateway":xxxx,
"dns1":xxxx,
"dns2":xxxx,
"mainCard": true or false
}
- 响应参数:
示例
{
"code": 200,
"message": "success"
}
配置ntp
- 接口描述:配置ntp的信息参数
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/system/setNTP
返回示例
{
"code": 200,
"message": "success"
}
获取ntp配置
- 接口描述:获取ntp配置的网络信息
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/system/getNTP
返回示例
{
"code": 200,
"data":{
"ntpEnable":True or False,
"ntpServer":"ntp1.aliyun.com",
"ntpPort":123,
"synInterval":20
},
"message": "success"
}
获取系统时间
- 接口描述:获取系统的时间
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/system/getTime
返回示例
{
"code": 200,
"data":{
"time":"2019-09-09 11:12:11"
},
"message": "success"
}
获取系统时间
- 接口描述:获取系统的时间
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/system/setTime
- 参数说明:
示例
{
"time":"2019-09-09 11:12:11"
}
- 响应参数:
示例
{
"code": 200,
"message": "success"
}
批量删除任务
- 接口描述:批量删除任务
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/algorithm/batchDelete
- 参数说明:
示例
{
"jobList":[1,2,3]
}
- 响应参数:
示例
{
"code": 200,
"message": "success"
}
更新算法任务
- 接口描述:对算法任务进行更新
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/algorithm/updateAlgoJob
- 参数说明:
示例
{
"jobId":1,
"jobName":"测试",
"deviceId":1,
"name":"ipc",
"algoName":"算法名",
"jobDesc":"描述",
"algoParam":"算法参数"
}
- 响应参数:
示例
{
"code": 200,
"message": "success"
}
系统信息
- 接口描述:获取系统信息
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/system/info
返回示例
{
"code": 200,
"data": {
"cpu": 4,
"diskPercent": 72.8,
"diskUsed":10.1,
"diskTotal":50.1,
"getway": "192.168.31.1",
"ipAddr": "192.168.31.102",
"mainCard": true,
"memory": 11.2,
"netmask": "255.255.255.0",
"mac":"ec:d6:8a:36:f7:2c",
"ntpEnable": false,
"ntpPort": 123,
"ntpServer": "ntp1.aliyun.com",
"ntpSynInterval": 60,
"os": "Linux",
"processor": "x86_64",
"softVersion":1.2,
"versionInfo": ["aibox-1.2.2-20191108-bb4425de↵", "access-1.1-20191108-598d315↵",…],
"time": "2019-09-11 14:22:13"
},
"message": "success"
}
设备更新
- 接口描述:设备更新
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/device/update
- 参数说明:
示例
{
"deviceId":1
"name":"deviceName",
"protocol":"ONVIF",//GB,HK,DH
"type":"IPC",//IPC, NVR
"params":xxx
}
- 响应参数:
示例
{
"code": 200,
"message": "success"
}
ntp服务测试
- 接口描述:ntp服务测试
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/system/ntpServerTest
- 参数说明:
示例
{
"ntpServer":"ntp1.aliyun.com",
"ntpPort":123,
}
- 响应参数:
示例
{
"code": 200,
"message": "success"
}
三元组绑定
- 接口描述:设备3元组绑定
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/licence/bind
- 参数说明:
示例
{
"productKey":xxxx,
"deviceName":"三元组中的设备名",
"localDeviceName":"本地ipc设备名"
}
- 响应参数:
示例
{
"code": 200,
"message": "success"
}
三元组解绑
- 接口描述:设备三元组解绑
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/licence/unbind
- 参数说明:
示例
{
"productKey":xxxx,
"deviceName":"三元组中的设备名",
"localDeviceName":"本地ipc设备名"
}
- 响应参数:
示例
{
"code": 200,
"message": "success"
}
查询算法任务
- 接口描述:查询算法任务
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/algorithm/queryJob
- 参数说明:
示例
{
"jobId":123
}
- 响应参数:
示例
{
"code": 200,
"message": "success"
"data": {
"algoName": "personVehicleDetect",
"createTime": 1564477661000,
"deviceId": 318,
"jobDesc": "",
"jobId": 123,
"jobName": "人车检测",
"name": "hik",
"status": 0,
"updateTime": 1564477661000
},
}
系统重启
- 接口描述:系统重启
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/system/reboot
返回示例
{
"code": 200,
"message": "success"
}
重置网关
- 接口描述:重置网关信息
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/licence/resetgateway
返回示例
{
"code": 200,
"message": "success"
}
查询支持的协议
- 接口描述:查询支持的协议
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/device/querySupportProtocol
返回示例
{
"code": 200,
"message": "success",
"data":['HIK','DH','ONVIF','GB']
}
获取stream url
- 接口描述:获取视频返回流
- 请求方式:POST
- 请求地址:http://30.42.82.42:8080/vision/edge/console/streaming/geturl
- 参数说明:
示例
{
"deviceId":347,
"streamType":0,
"scheme":"RTMP"
}
- 响应参数:
示例
{
"code":200,
"data":{"url":"rtmp://192.168.31.222:1935/live/1_0"},
"message":"success"
}
在文档使用中是否遇到以下问题
更多建议
匿名提交