From 3a1f77898c41a9ad3feaf6f5f03ee34ba61071ea Mon Sep 17 00:00:00 2001
From: houxiao <houxiao@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期一, 27 三月 2017 18:59:43 +0800
Subject: [PATCH] bug fix
---
ProxyConsole/proxyconsole-hc.cpp | 178 ++++++++----
ProxyConsole/config.json | 66 ++--
ProxyConsole/config.mediaalarm8.json | 508 +++++++++++++++++++++++++++++++++++++++
3 files changed, 659 insertions(+), 93 deletions(-)
diff --git a/ProxyConsole/config.json b/ProxyConsole/config.json
index e47e1f8..6fabe8a 100644
--- a/ProxyConsole/config.json
+++ b/ProxyConsole/config.json
@@ -8,6 +8,7 @@
"equipments" : [
+
{
"id" : 1,
"type" : 4,
@@ -29,12 +30,41 @@
"channel" : 0,
"byWallNo" : 1,
"dwSubWinNo" : 1,
- "dwWinNo" : 1,
+ "dwWinNo" : [1,2],
"lAlarmOutPort" : 1
}
},
+
+
{
- "id" : 1,
+ "id" : 5,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "192.168.1.6",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "192.168.1.101",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "192.168.1.66",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 5,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+
+ {
+ "id" : 3,
"type" : 4,
"type_str" : "ET_HCNET_DECODER_LOGO",
"ip" : "192.168.1.5",
@@ -53,36 +83,14 @@
"passwd" : "admin12345",
"channel" : 1,
"byWallNo" : 1,
- "dwSubWinNo" : 2,
- "dwWinNo" : 1,
- "lAlarmOutPort" : 1
- }
- },
- {
- "id" : 1,
- "type" : 4,
- "type_str" : "ET_HCNET_DECODER_LOGO",
- "ip" : "192.168.1.5",
- "port" : "80",
- "user" : "supervisor",
- "pass" : "supervisor",
-
- "serverIP" : "192.168.1.101",
- "serverport" : "8000",
- "reboot" : 0,
-
- "user_config" : {
- "ip" : "192.168.1.66",
- "port" : 8000,
- "username" : "admin",
- "passwd" : "admin12345",
- "channel" : 2,
- "byWallNo" : 1,
- "dwSubWinNo" : 3,
- "dwWinNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : [4,3],
"lAlarmOutPort" : 1
}
}
+
+
+
]
}
\ No newline at end of file
diff --git a/ProxyConsole/config.mediaalarm8.json b/ProxyConsole/config.mediaalarm8.json
new file mode 100644
index 0000000..6f22f38
--- /dev/null
+++ b/ProxyConsole/config.mediaalarm8.json
@@ -0,0 +1,508 @@
+{
+ "hcsdk" : {
+ "serverIP" : "172.16.23.99",
+ "serverport" : 8000,
+ "username" : "admin",
+ "passwd" : "a1234567"
+ },
+
+ "equipments" : [
+
+ {
+ "id" : 1,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.151",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 3,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 2,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.151",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 1,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 9,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+
+ {
+ "id" : 3,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.152",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 18,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 4,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.152",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 1,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 16,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 5,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.153",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 5,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 6,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.153",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 1,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 6,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 7,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.154",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 7,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 8,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.154",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 1,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 8,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 9,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.155",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 4,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 10,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.155",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 1,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 10,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 11,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.156",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 11,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 12,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.156",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 1,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 12,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 13,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.157",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 19,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 14,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.157",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 1,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 20,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 15,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.158",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 17,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 16,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.158",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 1,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 14,
+ "lAlarmOutPort" : 1
+ }
+ },
+ {
+ "id" : 17,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.158",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 2,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 13,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 18,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.150",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 0,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 1,
+ "lAlarmOutPort" : 1
+ }
+ },
+
+ {
+ "id" : 19,
+ "type" : 4,
+ "type_str" : "ET_HCNET_DECODER_LOGO",
+ "ip" : "172.16.23.150",
+ "port" : "80",
+ "user" : "supervisor",
+ "pass" : "supervisor",
+
+ "serverIP" : "172.16.23.99",
+ "serverport" : "8000",
+ "reboot" : 0,
+
+ "user_config" : {
+ "ip" : "127.0.0.1",
+ "port" : 8000,
+ "username" : "admin",
+ "passwd" : "admin12345",
+ "channel" : 1,
+ "byWallNo" : 1,
+ "dwSubWinNo" : 1,
+ "dwWinNo" : 2,
+ "lAlarmOutPort" : 1
+ }
+ }
+
+
+
+ ]
+}
\ No newline at end of file
diff --git a/ProxyConsole/proxyconsole-hc.cpp b/ProxyConsole/proxyconsole-hc.cpp
index 57907dd..b21a9de 100644
--- a/ProxyConsole/proxyconsole-hc.cpp
+++ b/ProxyConsole/proxyconsole-hc.cpp
@@ -37,7 +37,7 @@
#define HPR_OK 0
#define HPR_ERROR -1
-#define MAX_NUM 16
+#define MAX_NUM 32
#define MAX 1024
#define fileread_buf 128
@@ -78,7 +78,7 @@
int channel;
uint16_t byWallNo;
uint16_t dwSubWinNo;
- uint16_t dwWinNo;
+ std::vector<uint16_t> dwWinNo;
uint16_t lAlarmOutPort;
};
@@ -97,14 +97,14 @@
pthread_t thread_no[MAX_NUM];
pthread_t thread_noEQ[MAX_NUM];
pthread_t thread_Real[MAX_NUM];
-sockinfo equipments[16];
-int sock_upper[16],sock_down[16];
-int rsock_down[16];
+sockinfo equipments[MAX_NUM];
+int sock_upper[MAX_NUM],sock_down[MAX_NUM];
+int rsock_down[MAX_NUM];
char byte_array[2600];
int bbbbb=0;
int CommandEquipIdx=0;
-int CommandKind[16];
-char sessionIDs[16][5];
+int CommandKind[MAX_NUM];
+char sessionIDs[MAX_NUM][5];
char linkequip_ip[32];
char linkequip_port[10];
@@ -113,8 +113,8 @@
int NUM=0,equip_num=0;
-int SupperConnectedflag[16]={0,},EquipConnectedflag[16]={0,},serverflag=0,GPIO_flag=0;
-int EquipRealAlarmConnectedflag[16];
+int SupperConnectedflag[MAX_NUM]={0,},EquipConnectedflag[MAX_NUM]={0,},serverflag=0,GPIO_flag=0;
+int EquipRealAlarmConnectedflag[MAX_NUM];
timer_t* timerID;
std::vector<std::string> SupperConnectedIP;
@@ -139,12 +139,12 @@
int GPIO_READ(int PortNum);
void GPIO_WRITE(int PortNum,unsigned char DATA);
int RealEventStart(int Idx);
-int gCapturing[16];
-char sessions[16][10];
+int gCapturing[MAX_NUM];
+char sessions[MAX_NUM][10];
int n=0,m=0,k=0;
-unsigned char DownBuffer[16][614000];
-int DownCount[16];
+unsigned char DownBuffer[MAX_NUM][614000];
+int DownCount[MAX_NUM];
int gCount=0;
int gCount30s=0;
int gCount2s=0;
@@ -170,10 +170,10 @@
gCount2s++;
if(gCount2s>=8){
gCount2s=0;
- for(;CommandEquipIdx<16;CommandEquipIdx++){//connected
+ for(;CommandEquipIdx<MAX_NUM;CommandEquipIdx++){//connected
if(EquipConnectedflag[CommandEquipIdx]>0) break;
}
- if(CommandEquipIdx>=16){
+ if(CommandEquipIdx>=MAX_NUM){
CommandEquipIdx = 0;
}
}
@@ -287,11 +287,12 @@
int hcnetsdk_get_userid(const std::string& decode_ip)
{
- hcnetsdk_user_t::const_iterator iter = g_hcnetsdk_user.find(decode_ip);
- if(iter == g_hcnetsdk_user.end())
- return -1;
- else
- return iter->second;
+ return hcnetsdk_user;
+ //hcnetsdk_user_t::const_iterator iter = g_hcnetsdk_user.find(decode_ip);
+ //if(iter == g_hcnetsdk_user.end())
+ // return -1;
+ //else
+ // return iter->second;
}
void CALLBACK hcnetsdk_ExceptionCallBack(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser)
@@ -479,7 +480,7 @@
LONG lUserID;
NET_DVR_DEVICEINFO_V30 struDeviceInfo;
- lUserID = NET_DVR_Login_V30((char*)g_hcnetsdkconfig.serverIP.c_str(), g_hcnetsdkconfig.serverport,
+ hcnetsdk_user = lUserID = NET_DVR_Login_V30((char*)g_hcnetsdkconfig.serverIP.c_str(), g_hcnetsdkconfig.serverport,
(char*)g_hcnetsdkconfig.username.c_str(), (char*)g_hcnetsdkconfig.passwd.c_str(), &struDeviceInfo);
if (lUserID < 0) {
printf("NET_DVR_Login_V30 failed, err: %d\n", NET_DVR_GetLastError());
@@ -494,7 +495,7 @@
return lUserID;
}
-HCNetCameraConfig* hcnetsdk_find_config(const std::string& decoder_ip)
+HCNetCameraConfig* hcnetsdk_find_config(const sockinfo& oldEquipConfig, int newChannel)
{
for (size_t i = 0; i < NUM; i++)
{
@@ -502,8 +503,11 @@
if (equip->m_type > ET_HCNET_DECODER__FIRST || equip->m_type < ET_HCNET_DECODER__LAST)
{
HCNetCameraConfig* camConfig = (HCNetCameraConfig*)equip->user_config;
- if (camConfig != NULL && equip->serverIP == decoder_ip)
- return camConfig;
+ if (camConfig != NULL && strcmp(equip->ip, oldEquipConfig.ip) == 0)
+ {
+ if (camConfig->channel == newChannel)
+ return camConfig;
+ }
}
}
@@ -544,13 +548,13 @@
int hcnetsdk_alarm_logo(LONG lUserID, const HCNetCameraConfig& _camConfig, const std::string& ip, int channel, bool disalarm)
{
HCNetCameraConfig camConfig(_camConfig);
- if (camConfig.channel != channel)
- {
- camConfig.channel = -1;
- sockinfo* equipConfig = hcnetsdk_find_equip(ip, channel);
- if (equipConfig != NULL)
- camConfig = *(HCNetCameraConfig*)(equipConfig->user_config);
- }
+ //if (camConfig.channel != channel)
+ //{
+ // camConfig.channel = -1;
+ // sockinfo* equipConfig = hcnetsdk_find_equip(ip, channel);
+ // if (equipConfig != NULL)
+ // camConfig = *(HCNetCameraConfig*)(equipConfig->user_config);
+ //}
printf("hcnetsdk_alarm_logo, channel=%d, matchc=%d\n", channel, camConfig.channel);
@@ -571,17 +575,23 @@
net_dvr_win_logo_cfg.dwSize = sizeof(net_dvr_win_logo_cfg);
//璁剧疆绐楀彛杈撳嚭logo
int byWallNo=1,dwSubWinNo=2,dwWinNo=1;
- DWORD dwDecChanNum=(camConfig.byWallNo << 24) | (camConfig.dwSubWinNo << 16) | camConfig.dwWinNo;
- if(!NET_DVR_SetDVRConfig(lUserID,NET_DVR_SET_WIN_LOGO_CFG,dwDecChanNum,&net_dvr_win_logo_cfg,net_dvr_win_logo_cfg.dwSize))
+
+ for (int i= 0; i < camConfig.dwWinNo.size(); i++)
{
- printf("NET_DVR_SetDVRConfig2 error, err: %d\n", NET_DVR_GetLastError());
- return -1;
+ DWORD dwDecChanNum=(camConfig.byWallNo << 24) | (camConfig.dwSubWinNo << 16) | camConfig.dwWinNo[i];
+ if(!NET_DVR_SetDVRConfig(lUserID,NET_DVR_SET_WIN_LOGO_CFG,dwDecChanNum,&net_dvr_win_logo_cfg,net_dvr_win_logo_cfg.dwSize))
+ {
+ printf("NET_DVR_SetDVRConfig2 error, err: %d\n", NET_DVR_GetLastError());
+ //return -1;
+ }
+ else
+ {
+ printf("NET_DVR_SetDVRConfig2 done.\n");
+ //return 0;
+ }
}
- else
- {
- printf("NET_DVR_SetDVRConfig2 done.\n");
- //return 0;
- }
+
+ return 0;
//sleep(3);
//net_dvr_win_logo_cfg.byEnable = 0;
@@ -809,6 +819,7 @@
void* MyEquipmentthread(void* arg)
{
int eidx = (int)arg;
+ const sockinfo& equipConfig(equipments[eidx]);
printf("Step.3 ===%d=====>RealTimeEvent Thread is strarted......\n",eidx);
int length=0;
@@ -841,10 +852,35 @@
}
}
+ if (channel==1)
+ {
+ int aa=1;//#todo break
+ }
+
if(gCapturing[eidx]==1)
{
+ //add 20170327
+ const std::string& ip(equipConfig.ip);
+ const HCNetCameraConfig* camConfig = (HCNetCameraConfig*)equipConfig.user_config;
+ camConfig = hcnetsdk_find_config(equipConfig, channel);
+ int lUserData = hcnetsdk_get_userid(ip);
+ if (camConfig != NULL && hcnetsdk_user >= 0)
+ {
+ std::cout << "......alarm begin k=" << k << std::endl;
+ if (equipConfig.m_type == ET_HCNET_DECODER_ALARMOUT && !isDisalarm)
+ hcnetsdk_alarm_alarmout(lUserData, *camConfig);
+ else if (equipConfig.m_type == ET_HCNET_DECODER_LOGO)
+ hcnetsdk_alarm_logo(lUserData, *camConfig, ip, channel, isDisalarm);
+ std::cout << "......alarm end k=" << k << std::endl;
+ }
+ else
+ {
+ std::cout << "alarm lost k=" << k << std::endl;
+ }
+
+
int k;
- for(k=0;k<16;k++)
+ for(k=0;k<MAX_NUM;k++)
{
//if(SupperConnectedflag[k]==1)
//{
@@ -878,28 +914,28 @@
//printf("%s",buff);
//}
//else
- {
- if(SupperConnectedIP.size() > k)
- {
- const std::string& ip(SupperConnectedIP[k]);
- sockinfo* equipConfig = hcnetsdk_find_equip(ip);
- HCNetCameraConfig* camConfig = hcnetsdk_find_config(ip);
- int lUserData = hcnetsdk_get_userid(ip);
- if (camConfig != NULL && equipConfig != NULL && lUserData >= 0)
- {
- std::cout << "......alarm begin k=" << k << std::endl;
- if (equipConfig->m_type == ET_HCNET_DECODER_ALARMOUT && !isDisalarm)
- hcnetsdk_alarm_alarmout(lUserData, *camConfig);
- else if (equipConfig->m_type == ET_HCNET_DECODER_LOGO)
- hcnetsdk_alarm_logo(lUserData, *camConfig, ip, channel, isDisalarm);
- std::cout << "......alarm end k=" << k << std::endl;
- }
- else
- {
- std::cout << "alarm lost k=" << k << std::endl;
- }
- }
- }
+ //{
+ // if(SupperConnectedIP.size() > k)
+ // {
+ // const std::string& ip(SupperConnectedIP[k]);
+ // sockinfo* equipConfig = hcnetsdk_find_equip(ip);
+ // HCNetCameraConfig* camConfig = hcnetsdk_find_config(ip);
+ // int lUserData = hcnetsdk_get_userid(ip);
+ // if (camConfig != NULL && equipConfig != NULL && lUserData >= 0)
+ // {
+ // std::cout << "......alarm begin k=" << k << std::endl;
+ // if (equipConfig->m_type == ET_HCNET_DECODER_ALARMOUT && !isDisalarm)
+ // hcnetsdk_alarm_alarmout(lUserData, *camConfig);
+ // else if (equipConfig->m_type == ET_HCNET_DECODER_LOGO)
+ // hcnetsdk_alarm_logo(lUserData, *camConfig, ip, channel, isDisalarm);
+ // std::cout << "......alarm end k=" << k << std::endl;
+ // }
+ // else
+ // {
+ // std::cout << "alarm lost k=" << k << std::endl;
+ // }
+ // }
+ //}
}
continue;
}
@@ -968,7 +1004,21 @@
camConfig->channel = jsonUserConfig["channel"].asInt();
camConfig->byWallNo = jsonUserConfig["byWallNo"].asInt();
camConfig->dwSubWinNo = jsonUserConfig["dwSubWinNo"].asInt();
- camConfig->dwWinNo = jsonUserConfig["dwWinNo"].asInt();
+
+ Json::Value dwWinNoArrays = jsonUserConfig["dwWinNo"];
+ if (dwWinNoArrays.isArray())
+ {
+ const int s = (int)(dwWinNoArrays.size());
+ for(int i = 0; i < s; i++)
+ {
+ camConfig->dwWinNo.push_back(dwWinNoArrays[i].asInt());
+ }
+ }
+ else
+ {
+ camConfig->dwWinNo.push_back(dwWinNoArrays.asInt());
+ }
+
camConfig->lAlarmOutPort = jsonUserConfig["lAlarmOutPort"].asInt();
}
--
Gitblit v1.8.0