From 29a8a3236b7e773f47c831e1129b4fc439613b60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?LAPTOP-S9HJSOEB=5C=E6=98=8A=E5=A4=A9?= Date: Fri, 19 Jul 2024 15:44:32 +0800 Subject: [PATCH] =?UTF-8?q?=E7=90=83=E6=9C=BA=E6=96=AD=E8=BF=9E=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zhehekeji/web/lib/hik/HikExceptionCallBack.java | 9 ++++++++- .../java/com/zhehekeji/web/service/CameraService.java | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/web/src/main/java/com/zhehekeji/web/lib/hik/HikExceptionCallBack.java b/web/src/main/java/com/zhehekeji/web/lib/hik/HikExceptionCallBack.java index aec408c..097bf53 100644 --- a/web/src/main/java/com/zhehekeji/web/lib/hik/HikExceptionCallBack.java +++ b/web/src/main/java/com/zhehekeji/web/lib/hik/HikExceptionCallBack.java @@ -10,13 +10,20 @@ public class HikExceptionCallBack implements HCNetSDK.FExceptionCallBack { @Override public void invoke(int dwType, int lUserID, int lHandle, Pointer pUser) { + NetSDKLib.LLong lLong = new NetSDKLib.LLong(lUserID); Integer cameraId =CameraConnMap.getCameraIdByLoginId(new NetSDKLib.LLong(lUserID)); + if(dwType == 32768){ log.error("hik disconnect,cameraId:{}", cameraId); }else if(dwType == 32791){ - log.info("hik reconnect,cameraId:{}", CameraConnMap.getCameraIdByLoginId(new NetSDKLib.LLong(lUserID))); + log.info("hik reconnect,cameraId:{}", cameraId); + + if(!lLong.equals(CameraConnMap.getConnId(cameraId))) { + log.error("hik reconnect,cameraId:{},lUserId:{}", cameraId,lLong); + CameraConnMap.conn(cameraId, new NetSDKLib.LLong(lUserID)); + } } } diff --git a/web/src/main/java/com/zhehekeji/web/service/CameraService.java b/web/src/main/java/com/zhehekeji/web/service/CameraService.java index b243e84..830ca6a 100644 --- a/web/src/main/java/com/zhehekeji/web/service/CameraService.java +++ b/web/src/main/java/com/zhehekeji/web/service/CameraService.java @@ -352,7 +352,7 @@ public class CameraService { if(ok){ cameraControlModule.setCameraTime(camera.getId()); }else { - CameraConnMap.disConn(camera.getId()); + //CameraConnMap.disConn(camera.getId()); camera.setStatus("未连接"); log.error("camera "+camera.getIp() +"未连接"); cameraLogin(camera);