|
|
|
@ -10,6 +10,7 @@ import com.zhehekeji.web.lib.CameraConnMap;
|
|
|
|
import com.zhehekeji.web.lib.CameraControlModule;
|
|
|
|
import com.zhehekeji.web.lib.CameraControlModule;
|
|
|
|
import com.zhehekeji.web.lib.joyware.NetSDKLib;
|
|
|
|
import com.zhehekeji.web.lib.joyware.NetSDKLib;
|
|
|
|
import com.zhehekeji.web.pojo.camera.CameraPtzPojo;
|
|
|
|
import com.zhehekeji.web.pojo.camera.CameraPtzPojo;
|
|
|
|
|
|
|
|
import com.zhehekeji.web.service.iotService.IotServiceImpl;
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
|
|
|
|
|
|
|
import java.io.*;
|
|
|
|
import java.io.*;
|
|
|
|
@ -17,9 +18,7 @@ import java.nio.charset.StandardCharsets;
|
|
|
|
import java.time.Duration;
|
|
|
|
import java.time.Duration;
|
|
|
|
import java.time.LocalDateTime;
|
|
|
|
import java.time.LocalDateTime;
|
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.*;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
import java.util.Timer;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import static com.zhehekeji.web.lib.hik.HCNetSDK.NET_DVR_GET_PTZPOS;
|
|
|
|
import static com.zhehekeji.web.lib.hik.HCNetSDK.NET_DVR_GET_PTZPOS;
|
|
|
|
import static com.zhehekeji.web.lib.hik.HCNetSDK.NET_DVR_SET_TIMECFG;
|
|
|
|
import static com.zhehekeji.web.lib.hik.HCNetSDK.NET_DVR_SET_TIMECFG;
|
|
|
|
@ -31,10 +30,26 @@ import static com.zhehekeji.web.lib.hik.HCNetSDK.NET_DVR_SET_TIMECFG;
|
|
|
|
@Slf4j
|
|
|
|
@Slf4j
|
|
|
|
public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* 云台控制结果写入IOT状态:成功写0,失败写错误码
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
private boolean writeCameraStatus(Integer cameraId, boolean ok) {
|
|
|
|
|
|
|
|
if (ok) {
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId), "cameraErrorCode", 0);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
int errorCode = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError();
|
|
|
|
|
|
|
|
log.error("ptz error:{},cameraId:{}", errorCode, cameraId);
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId), "cameraErrorCode", errorCode);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return ok;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean connectStatus(Integer cameraId){
|
|
|
|
public boolean connectStatus(Integer cameraId){
|
|
|
|
NetSDKLib.LLong userId = CameraConnMap.getConnId(cameraId);
|
|
|
|
NetSDKLib.LLong userId = CameraConnMap.getConnId(cameraId);
|
|
|
|
|
|
|
|
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_RemoteControl(userId.intValue(),20005,null,0);
|
|
|
|
boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_RemoteControl(userId.intValue(),20005,null,0);
|
|
|
|
|
|
|
|
return writeCameraStatus(cameraId, ok);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@ -44,13 +59,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlUpStart(Integer cameraId, int nChannelID, int dwPTZCommand,int dwStop)
|
|
|
|
public boolean ptzControlUpStart(Integer cameraId, int nChannelID, int dwPTZCommand,int dwStop)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.TILT_UP, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.TILT_UP, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlUpEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlUpEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.TILT_UP, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.TILT_UP, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
@ -59,13 +74,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlDownStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
public boolean ptzControlDownStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.TILT_DOWN, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.TILT_DOWN, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlDownEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlDownEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.TILT_DOWN, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.TILT_DOWN, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
@ -74,13 +89,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlLeftStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
public boolean ptzControlLeftStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.PAN_LEFT, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.PAN_LEFT, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlLeftEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlLeftEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.PAN_LEFT, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.PAN_LEFT, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
@ -93,11 +108,14 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
IntByReference intByReference = new IntByReference(1);
|
|
|
|
IntByReference intByReference = new IntByReference(1);
|
|
|
|
boolean b_GetPTZ = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetDVRConfig(lUserId, NET_DVR_GET_PTZPOS,1,pointer,netDvrPtzpos.size(),intByReference);
|
|
|
|
boolean b_GetPTZ = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetDVRConfig(lUserId, NET_DVR_GET_PTZPOS,1,pointer,netDvrPtzpos.size(),intByReference);
|
|
|
|
if (b_GetPTZ == false) {
|
|
|
|
if (b_GetPTZ == false) {
|
|
|
|
System.out.println("获取PTZ坐标信息失败,错误码:" +HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError());
|
|
|
|
int errorCode = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError();
|
|
|
|
|
|
|
|
System.out.println("获取PTZ坐标信息失败,错误码:" + errorCode);
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(lUserID),"cameraErrorCode",errorCode);
|
|
|
|
cameraPtzPojo.setGetSuccess(false);
|
|
|
|
cameraPtzPojo.setGetSuccess(false);
|
|
|
|
}else {
|
|
|
|
}else {
|
|
|
|
|
|
|
|
|
|
|
|
cameraPtzPojo.setGetSuccess(true);
|
|
|
|
cameraPtzPojo.setGetSuccess(true);
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(lUserID),"cameraErrorCode",0);
|
|
|
|
netDvrPtzpos.read();
|
|
|
|
netDvrPtzpos.read();
|
|
|
|
cameraPtzPojo.setWPanPos(hexToDegree(netDvrPtzpos.wPanPos));
|
|
|
|
cameraPtzPojo.setWPanPos(hexToDegree(netDvrPtzpos.wPanPos));
|
|
|
|
cameraPtzPojo.setWTiltPos(hexToDegree(netDvrPtzpos.wTiltPos));
|
|
|
|
cameraPtzPojo.setWTiltPos(hexToDegree(netDvrPtzpos.wTiltPos));
|
|
|
|
@ -122,13 +140,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlRightStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
public boolean ptzControlRightStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.PAN_RIGHT, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.PAN_RIGHT, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlRightEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlRightEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.PAN_RIGHT, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.PAN_RIGHT, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 向左上
|
|
|
|
* 向左上
|
|
|
|
@ -136,13 +154,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlLeftUpStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
public boolean ptzControlLeftUpStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.UP_LEFT, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.UP_LEFT, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlLeftUpEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlLeftUpEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.UP_LEFT, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.UP_LEFT, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
@ -151,14 +169,14 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlRightUpStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
public boolean ptzControlRightUpStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.UP_RIGHT, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.UP_RIGHT, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlRightUpEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlRightUpEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.UP_RIGHT, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.UP_RIGHT, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 向左下
|
|
|
|
* 向左下
|
|
|
|
@ -167,15 +185,12 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
Boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.DOWN_LEFT, 0);
|
|
|
|
Boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.DOWN_LEFT, 0);
|
|
|
|
if(!ok){
|
|
|
|
return writeCameraStatus(cameraId, ok);
|
|
|
|
log.error("error:{},cameraId:{}", HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError(),cameraId);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return ok;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
public boolean ptzControlLeftDownEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlLeftDownEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.DOWN_LEFT, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.DOWN_LEFT, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 向右下
|
|
|
|
* 向右下
|
|
|
|
@ -183,13 +198,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlRightDownStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
public boolean ptzControlRightDownStart(Integer cameraId, int nChannelID, int dwPTZCommand, int dwStop)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.DOWN_RIGHT, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.DOWN_RIGHT, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlRightDownEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlRightDownEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.DOWN_RIGHT, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.DOWN_RIGHT, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
@ -198,13 +213,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlZoomAddStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
public boolean ptzControlZoomAddStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.ZOOM_IN, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.ZOOM_IN, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlZoomAddEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlZoomAddEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.ZOOM_IN, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.ZOOM_IN, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
@ -213,13 +228,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlZoomDecStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
public boolean ptzControlZoomDecStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.ZOOM_OUT, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.ZOOM_OUT, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlZoomDecEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlZoomDecEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.ZOOM_OUT, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.ZOOM_OUT, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 变焦+
|
|
|
|
* 变焦+
|
|
|
|
@ -227,13 +242,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlFocusAddStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
public boolean ptzControlFocusAddStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.FOCUS_NEAR, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.FOCUS_NEAR, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlFocusAddEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlFocusAddEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.FOCUS_NEAR, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.FOCUS_NEAR, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* 变焦-
|
|
|
|
* 变焦-
|
|
|
|
@ -241,13 +256,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlFocusDecStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
public boolean ptzControlFocusDecStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.FOCUS_FAR, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.FOCUS_FAR, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlFocusDecEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlFocusDecEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.FOCUS_FAR, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.FOCUS_FAR, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
@ -256,13 +271,13 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlIrisAddStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
public boolean ptzControlIrisAddStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.IRIS_OPEN, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.IRIS_OPEN, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlIrisAddEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlIrisAddEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.IRIS_OPEN, 1);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.IRIS_OPEN, 1));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
@ -271,14 +286,14 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
public boolean ptzControlIrisDecStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
public boolean ptzControlIrisDecStart(Integer cameraId, int nChannelID, int dwPTZCommand)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.IRIS_CLOSE, 0);
|
|
|
|
return writeCameraStatus(cameraId, HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.IRIS_CLOSE, 0));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean ptzControlIrisDecEnd(Integer cameraId, int nChannelID)
|
|
|
|
public boolean ptzControlIrisDecEnd(Integer cameraId, int nChannelID)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
int lUserId = CameraConnMap.getConnId(cameraId).intValue();
|
|
|
|
Boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.IRIS_CLOSE, 1);
|
|
|
|
Boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZControl_Other(lUserId, 1, HCNetSDK.IRIS_CLOSE, 1);
|
|
|
|
return ok;
|
|
|
|
return writeCameraStatus(cameraId, ok);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public boolean pic(Integer cameraId, int nChannelID, String path)
|
|
|
|
public boolean pic(Integer cameraId, int nChannelID, String path)
|
|
|
|
@ -290,7 +305,12 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
HCNetSDK.NET_DVR_JPEGPARA jpegpara = new HCNetSDK.NET_DVR_JPEGPARA(wPicSize, wPicQuality);
|
|
|
|
HCNetSDK.NET_DVR_JPEGPARA jpegpara = new HCNetSDK.NET_DVR_JPEGPARA(wPicSize, wPicQuality);
|
|
|
|
boolean picResult = HikLoginModuleImpl.hcNetsdk.NET_DVR_CaptureJPEGPicture(lUserId, 1, jpegpara, path);
|
|
|
|
boolean picResult = HikLoginModuleImpl.hcNetsdk.NET_DVR_CaptureJPEGPicture(lUserId, 1, jpegpara, path);
|
|
|
|
if (!picResult) {
|
|
|
|
if (!picResult) {
|
|
|
|
log.error("pic error:{},cameraId:{},lUserId{}", HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError(),cameraId,lUserId);
|
|
|
|
int errorCode = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError();
|
|
|
|
|
|
|
|
log.error("pic error:{},cameraId:{},lUserId{}",errorCode ,cameraId,lUserId);
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",errorCode);
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return picResult;
|
|
|
|
return picResult;
|
|
|
|
@ -309,12 +329,16 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
|
|
|
|
|
|
|
|
int result = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetFileByTime(lUserID, 1, startTime, endTime, path);
|
|
|
|
int result = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetFileByTime(lUserID, 1, startTime, endTime, path);
|
|
|
|
if (result == -1) {
|
|
|
|
if (result == -1) {
|
|
|
|
log.error("downloadMp4 error code:{},cameraId:{},path:{}", HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError(),cameraId,path);
|
|
|
|
int errorCode = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError();
|
|
|
|
|
|
|
|
log.error("downloadMp4 error code:{},cameraId:{},path:{}", errorCode,cameraId,path);
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",errorCode);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
HikLoginModuleImpl.hcNetsdk.NET_DVR_PlayBackControl(result, HikLoginModuleImpl.hcNetsdk.NET_DVR_PLAYSTART,0,null);
|
|
|
|
HikLoginModuleImpl.hcNetsdk.NET_DVR_PlayBackControl(result, HikLoginModuleImpl.hcNetsdk.NET_DVR_PLAYSTART,0,null);
|
|
|
|
Timer downloadtimer = new Timer();
|
|
|
|
Timer downloadtimer = new Timer();
|
|
|
|
downloadtimer.schedule(new DownloadTask(result,downloadtimer,path,cameraId), 0, 5000);
|
|
|
|
downloadtimer.schedule(new DownloadTask(result,downloadtimer,path,cameraId), 0, 5000);
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
class DownloadTask extends java.util.TimerTask {
|
|
|
|
class DownloadTask extends java.util.TimerTask {
|
|
|
|
@ -421,7 +445,11 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
int dwzCommand = HCNetSDK.SET_PRESET;
|
|
|
|
int dwzCommand = HCNetSDK.SET_PRESET;
|
|
|
|
Boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZPreset_Other(CameraConnMap.getConnId(cameraId).intValue(), 1, dwzCommand, ptzId.intValue());
|
|
|
|
Boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZPreset_Other(CameraConnMap.getConnId(cameraId).intValue(), 1, dwzCommand, ptzId.intValue());
|
|
|
|
if(!ok){
|
|
|
|
if(!ok){
|
|
|
|
log.error("ptz error:{},cameraId:{}", HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError(),cameraId);
|
|
|
|
int errorCode = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError();
|
|
|
|
|
|
|
|
log.error("ptz error:{},cameraId:{}", errorCode,cameraId);
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",errorCode);
|
|
|
|
|
|
|
|
}else {
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Assert.isTrue(ok, "设置失败");
|
|
|
|
Assert.isTrue(ok, "设置失败");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -436,7 +464,11 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
int dwPTZCommand = HCNetSDK.GOTO_PRESET;
|
|
|
|
int dwPTZCommand = HCNetSDK.GOTO_PRESET;
|
|
|
|
Boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZPreset_Other(CameraConnMap.getConnId(cameraId).intValue(), 1, dwPTZCommand, ptzId);
|
|
|
|
Boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_PTZPreset_Other(CameraConnMap.getConnId(cameraId).intValue(), 1, dwPTZCommand, ptzId);
|
|
|
|
if(!ok){
|
|
|
|
if(!ok){
|
|
|
|
log.error("toPtz error:{},cameraId:{}", HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError(),cameraId);
|
|
|
|
int errorCode = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError();
|
|
|
|
|
|
|
|
log.error("ptz error:{},cameraId:{}", errorCode,cameraId);
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",errorCode);
|
|
|
|
|
|
|
|
}else {
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -459,7 +491,11 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
Boolean ok = HikLoginModuleImpl.netsdk.CLIENT_DHPTZControlEx2(CameraConnMap.getConnId(cameraId), 0, dwPTZCommand,
|
|
|
|
Boolean ok = HikLoginModuleImpl.netsdk.CLIENT_DHPTZControlEx2(CameraConnMap.getConnId(cameraId), 0, dwPTZCommand,
|
|
|
|
0, 0, 0, 0, absolutely.getPointer());
|
|
|
|
0, 0, 0, 0, absolutely.getPointer());
|
|
|
|
if(!ok){
|
|
|
|
if(!ok){
|
|
|
|
log.error("toPtzSlow error:{},cameraId:{}", HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError(),cameraId);
|
|
|
|
int errorCode = HikLoginModuleImpl.hcNetsdk.NET_DVR_GetLastError();
|
|
|
|
|
|
|
|
log.error("ptz error:{},cameraId:{}", errorCode,cameraId);
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",errorCode);
|
|
|
|
|
|
|
|
}else {
|
|
|
|
|
|
|
|
IotServiceImpl.set(IotServiceImpl.cameraToStreetMap.get(cameraId),"cameraErrorCode",0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@ -470,8 +506,8 @@ public class HikCameraControlModuleImpl implements CameraControlModule {
|
|
|
|
LocalDateTime localDateTime = LocalDateTime.now();
|
|
|
|
LocalDateTime localDateTime = LocalDateTime.now();
|
|
|
|
time.setTime(localDateTime.getYear(),localDateTime.getMonthValue(),localDateTime.getDayOfMonth(),localDateTime.getHour(),localDateTime.getMinute(),localDateTime.getSecond());
|
|
|
|
time.setTime(localDateTime.getYear(),localDateTime.getMonthValue(),localDateTime.getDayOfMonth(),localDateTime.getHour(),localDateTime.getMinute(),localDateTime.getSecond());
|
|
|
|
time.write();
|
|
|
|
time.write();
|
|
|
|
return HikLoginModuleImpl.hcNetsdk.NET_DVR_SetDVRConfig(lUserId, NET_DVR_SET_TIMECFG, 0,time.getPointer(), time.size());
|
|
|
|
boolean ok = HikLoginModuleImpl.hcNetsdk.NET_DVR_SetDVRConfig(lUserId, NET_DVR_SET_TIMECFG, 0,time.getPointer(), time.size());
|
|
|
|
|
|
|
|
return writeCameraStatus(cameraId, ok);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|