package com.netsdk.demo.customize.heatmap;
|
|
import com.netsdk.demo.util.CaseMenu;
|
import com.netsdk.lib.NetSDKLib;
|
import com.netsdk.lib.callback.impl.DefaultDisconnectCallback;
|
import com.netsdk.lib.callback.impl.DefaultHaveReconnectCallBack;
|
import com.netsdk.lib.callback.impl.MessCallBack;
|
import com.netsdk.lib.enumeration.ENUMERROR;
|
import com.netsdk.module.BaseModule;
|
import com.netsdk.module.entity.DeviceInfo;
|
|
/**
|
* className:ColdHotSpotEventDemo
|
* description:冷点异常、热点异常 热成像测温点温度异常报警事件
|
* author:251589
|
* createTime:2021/5/14 20:45
|
*
|
* @version v1.0
|
*/
|
|
public class ColdHotSpotEventDemo {
|
private NetSDKLib netSdk = NetSDKLib.NETSDK_INSTANCE;
|
/** 二次封装的基础模块,包含初始化,登录,登出 */
|
private BaseModule baseModule;
|
|
private long loginHandler;
|
/**
|
* sdk初始化
|
*
|
* @return
|
*/
|
public boolean init() {
|
return baseModule.init(
|
DefaultDisconnectCallback.getINSTANCE(), DefaultHaveReconnectCallBack.getINSTANCE(), true);
|
}
|
/**
|
* 登录设备
|
*
|
* @param ip 设备ip
|
* @param port 设备端口
|
* @param userName 用户名
|
* @param password 密码
|
* @return
|
*/
|
public boolean login(String ip, int port, String userName, String password) {
|
DeviceInfo info = baseModule.login(ip, port, userName, password);
|
if (info == null || info.getLoginHandler() == 0) {
|
loginHandler = 0;
|
return false;
|
}
|
loginHandler = info.getLoginHandler();
|
System.out.println("Login success! LoginHandler is " + loginHandler);
|
return true;
|
}
|
|
public void startListen(){
|
//设置报警事件回调
|
netSdk.CLIENT_SetDVRMessCallBack(MessCallBack.getInstance(),null);
|
//订阅报警事件
|
netSdk.CLIENT_StartListenEx(new NetSDKLib.LLong(loginHandler));
|
}
|
//退订
|
public void stopListen(){
|
netSdk.CLIENT_StopListen(new NetSDKLib.LLong(loginHandler));
|
}
|
|
public void runTest() {
|
CaseMenu menu = new CaseMenu();
|
menu.addItem(new CaseMenu.Item(this, "订阅", "startListen"));
|
menu.addItem(new CaseMenu.Item(this, "订阅", "stopListen"));
|
menu.run();
|
}
|
|
/**
|
* 登出设备
|
*
|
* @return
|
*/
|
public boolean logout() {
|
boolean result = baseModule.logout(loginHandler);
|
if (!result) {
|
System.out.println("logout failed. the error is " + ENUMERROR.getErrorMessage());
|
}
|
return result;
|
}
|
/**
|
* sdk清理资源
|
*
|
* @return
|
*/
|
public void clean() {
|
baseModule.clean();
|
}
|
|
|
|
public static void main(String[] args) {
|
String ip = "172.32.102.88";
|
int port = 37777;
|
String username = "admin";
|
String password = "admin123";
|
ColdHotSpotEventDemo demo = new ColdHotSpotEventDemo();
|
demo.init();
|
if (demo.login(ip, port, username, password)) {
|
|
demo.runTest();
|
demo.logout();
|
}
|
demo.clean();
|
}
|
|
}
|