From 415b1f8521f9137c2a625d6ed89dccc9c9d2da0a Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Thu, 10 Aug 2023 16:12:04 +0800
Subject: [PATCH] 海康视频报警事件订阅接入
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/util/GetCameraUtils.java | 124 +++++++++++++++++++++++++++++++---------
1 files changed, 95 insertions(+), 29 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/util/GetCameraUtils.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/util/GetCameraUtils.java
index b47d331..f98b0f3 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/util/GetCameraUtils.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/hk/util/GetCameraUtils.java
@@ -2,6 +2,7 @@
import cn.gistack.sm.hk.constant.HkConstant;
import cn.gistack.sm.hk.constant.ProtocolConstant;
+import cn.gistack.sm.hk.vo.EventVO;
import cn.gistack.sm.hk.vo.HkVO;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
@@ -10,10 +11,7 @@
import com.hikvision.artemis.sdk.config.ArtemisConfig;
import org.springblade.core.tool.api.R;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
import static cn.gistack.sm.hk.constant.HkConstant.ARTEMIS_PATH;
import static cn.gistack.sm.hk.util.GetCameraUtils.GetCameraPreviewURL;
@@ -247,29 +245,6 @@
return common(type,url,body);
}
-
- /**
- * 获取监控点资源分页数据
- *
- * @param url 监控资源url
- * @return
- */
- public static String GetCameraResourcePage(Integer type,Integer pageNo, Integer pageSize, String url) {
- /**
- * 组装请求参数
- */
- JSONObject jsonBody = new JSONObject();
- jsonBody.put("pageNo", pageNo);
- jsonBody.put("pageSize", pageSize);
- String body = jsonBody.toJSONString();
-
- /**
- * 调用接口并返回数据
- * post请求application/json类型参数;
- */
- return common(type,url, body);
- }
-
/**
* 抓图
*
@@ -291,7 +266,98 @@
return common(type,url, body);
}
- public static void main(String[] args) {
+ /**
+ * 获取监控点资源分页数据
+ * @param url 监控资源url
+ * @return
+ */
+ public static String GetCameraResourcePage(Integer type,Integer pageNo, Integer pageSize, String url) {
+ /**
+ * 组装请求参数
+ */
+ JSONObject jsonBody = new JSONObject();
+ jsonBody.put("pageNo", pageNo);
+ jsonBody.put("pageSize", pageSize);
+ String body = jsonBody.toJSONString();
+
+ /**
+ * 调用接口并返回数据
+ * post请求application/json类型参数;
+ */
+ return common(type,url, body);
+ }
+
+ /**
+ * 海康视频事件订阅
+ * @param eventVO
+ * @param url
+ * @return
+ */
+ public static String addEventSubscriptionByEventTypes(EventVO eventVO, String url) {
+ /**
+ * 组装请求参数
+ */
+ JSONObject jsonBody = new JSONObject();
+ jsonBody.put("eventTypes", Arrays.stream(eventVO.getEventTypes().split(",")).mapToInt(Integer::parseInt).toArray());
+ jsonBody.put("eventDest", eventVO.getEventDest());
+ if (null!=eventVO.getSubType()){
+ jsonBody.put("subType", eventVO.getSubType());
+ }
+ if (null!=eventVO.getEventLvl()){
+ jsonBody.put("eventLvl", Arrays.stream(eventVO.getEventLvl().split(",")).mapToInt(Integer::parseInt).toArray());
+ }
+ String body = jsonBody.toJSONString();
+
+ /**
+ * 调用接口并返回数据
+ * post请求application/json类型参数;
+ */
+ return common(null==eventVO.getType()?1:eventVO.getType(),url, body);
+ }
+
+ /**
+ * 海康视频事件取消订阅
+ * @param eventVO
+ * @param url
+ * @return
+ */
+ public static String removeEventSubscriptionByEventTypes(EventVO eventVO, String url) {
+ int[] eventTypes = Arrays.stream(eventVO.getEventTypes().split(",")).mapToInt(Integer::parseInt).toArray();
+ /**
+ * 组装请求参数
+ */
+ JSONObject jsonBody = new JSONObject();
+ jsonBody.put("eventTypes", eventTypes);
+ String body = jsonBody.toJSONString();
+
+ /**
+ * 调用接口并返回数据
+ * post请求application/json类型参数;
+ */
+ return common(null==eventVO.getType()?1:eventVO.getType(),url, body);
+ }
+
+ /**
+ * 查询事件订阅信息
+ * @param eventVO
+ * @param url
+ * @return
+ */
+ public static String getEventSubscriptionView(EventVO eventVO, String url) {
+ /**
+ * 组装请求参数
+ */
+ JSONObject jsonBody = new JSONObject();
+ String body = jsonBody.toJSONString();
+
+ /**
+ * 调用接口并返回数据
+ * post请求application/json类型参数;
+ */
+ return common(null==eventVO.getType()?1:eventVO.getType(),url, body);
+ }
+
+// public static void main(String[] args) {
//
// String previewURL = GetCameraPreviewURL(1, HkConstant.previewURLs,
// "0c4f30948dde4998a676ec6983119cb5",
@@ -378,5 +444,5 @@
// String common = common(HkConstant.playbackURLs, body);
//
// System.out.println("common = " + common);
- }
+// }
}
--
Gitblit v1.9.3