|
@@ -480,6 +480,7 @@ static void overallStatusMonitoring(void* conn)
|
|
|
{
|
|
{
|
|
|
int ret = -1 ;
|
|
int ret = -1 ;
|
|
|
cJSON *cjson;
|
|
cJSON *cjson;
|
|
|
|
|
+ cmd_data_t cmd;
|
|
|
_Over_All_Sts_Monitor _over_all_sts_monitor;
|
|
_Over_All_Sts_Monitor _over_all_sts_monitor;
|
|
|
_OverBackStsInfo _over_back_sts_info; //设备总体状态信息
|
|
_OverBackStsInfo _over_back_sts_info; //设备总体状态信息
|
|
|
_OverAllPwrAckInfo _over_all_pwr_back_info; //设备电源信息
|
|
_OverAllPwrAckInfo _over_all_pwr_back_info; //设备电源信息
|
|
@@ -514,17 +515,12 @@ static void overallStatusMonitoring(void* conn)
|
|
|
|
|
|
|
|
cur_dev_addr = _over_all_sts_monitor.product_id;
|
|
cur_dev_addr = _over_all_sts_monitor.product_id;
|
|
|
if(cur_dev_addr>0) {
|
|
if(cur_dev_addr>0) {
|
|
|
-
|
|
|
|
|
- cmd_data_t cmd;
|
|
|
|
|
cmd.cmd = CASCADE_CMD_QUERY_CH;
|
|
cmd.cmd = CASCADE_CMD_QUERY_CH;
|
|
|
cmd.obj = OBJ_OVERALL;
|
|
cmd.obj = OBJ_OVERALL;
|
|
|
cascade_request(&cmd);
|
|
cascade_request(&cmd);
|
|
|
|
|
|
|
|
ack_str = ctrl_sts_ack_to_json();
|
|
ack_str = ctrl_sts_ack_to_json();
|
|
|
- http_reply(conn, 200, ack_str);
|
|
|
|
|
- cJSON_Delete(cjson);
|
|
|
|
|
- cJSON_free(ack_str);
|
|
|
|
|
- return;
|
|
|
|
|
|
|
+ goto quit;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//参数转换json
|
|
//参数转换json
|
|
@@ -588,6 +584,17 @@ static void overallStatusMonitoring(void* conn)
|
|
|
//总开
|
|
//总开
|
|
|
int nSendAddr=0;
|
|
int nSendAddr=0;
|
|
|
char buff[256];
|
|
char buff[256];
|
|
|
|
|
+
|
|
|
|
|
+ if(cur_dev_addr>0) {
|
|
|
|
|
+ cmd.cmd = CASCADE_CMD_OPEN;
|
|
|
|
|
+ cmd.obj = OBJ_OVERALL;
|
|
|
|
|
+ cascade_request(&cmd);
|
|
|
|
|
+
|
|
|
|
|
+ ack_str = ctrl_sts_ack_to_json();
|
|
|
|
|
+ goto quit;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
GlobalPowerManger* _globalPowerMangerTemp = NULL ;
|
|
GlobalPowerManger* _globalPowerMangerTemp = NULL ;
|
|
|
list_for_each_entry(_globalPowerMangerTemp, &__globalDeviceManage._globalPowerManger.list, list)
|
|
list_for_each_entry(_globalPowerMangerTemp, &__globalDeviceManage._globalPowerManger.list, list)
|
|
|
{
|
|
{
|
|
@@ -608,6 +615,16 @@ static void overallStatusMonitoring(void* conn)
|
|
|
else if(strcmp(_over_all_sts_monitor.type,"close")==0)
|
|
else if(strcmp(_over_all_sts_monitor.type,"close")==0)
|
|
|
{
|
|
{
|
|
|
log_i("over all request:close");
|
|
log_i("over all request:close");
|
|
|
|
|
+
|
|
|
|
|
+ if(cur_dev_addr>0) {
|
|
|
|
|
+ cmd.cmd = CASCADE_CMD_CLOSE;
|
|
|
|
|
+ cmd.obj = OBJ_OVERALL;
|
|
|
|
|
+ cascade_request(&cmd);
|
|
|
|
|
+
|
|
|
|
|
+ ack_str = ctrl_sts_ack_to_json();
|
|
|
|
|
+ goto quit;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
//总关
|
|
//总关
|
|
|
int nSendAddr=0;
|
|
int nSendAddr=0;
|
|
|
char buff[256];
|
|
char buff[256];
|
|
@@ -886,10 +903,10 @@ static void overallStatusMonitoring(void* conn)
|
|
|
}
|
|
}
|
|
|
#endif
|
|
#endif
|
|
|
#endif
|
|
#endif
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
|
|
+quit:
|
|
|
cJSON_Delete(cjson);
|
|
cJSON_Delete(cjson);
|
|
|
http_reply(conn, 200, ack_str);
|
|
http_reply(conn, 200, ack_str);
|
|
|
-
|
|
|
|
|
cJSON_free((void*)ack_str);
|
|
cJSON_free((void*)ack_str);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -899,6 +916,7 @@ static void channelStatusMonitoring(void* conn)
|
|
|
{
|
|
{
|
|
|
int ret = -1 ;
|
|
int ret = -1 ;
|
|
|
cJSON *cjson;
|
|
cJSON *cjson;
|
|
|
|
|
+ cmd_data_t cmd;
|
|
|
_OverChnPwrRequest _over_chn_pwr_request;
|
|
_OverChnPwrRequest _over_chn_pwr_request;
|
|
|
_OverAllPwrAckInfo _over_all_pwr_back_info; //设备电源信息
|
|
_OverAllPwrAckInfo _over_all_pwr_back_info; //设备电源信息
|
|
|
char* rx_body_buf = NULL;
|
|
char* rx_body_buf = NULL;
|
|
@@ -949,15 +967,14 @@ static void channelStatusMonitoring(void* conn)
|
|
|
|
|
|
|
|
cur_dev_addr = _over_chn_pwr_request.product_id;
|
|
cur_dev_addr = _over_chn_pwr_request.product_id;
|
|
|
if(cur_dev_addr>0) {
|
|
if(cur_dev_addr>0) {
|
|
|
- cmd_data_t cmd;
|
|
|
|
|
cmd.cmd = CASCADE_CMD_QUERY_CH;
|
|
cmd.cmd = CASCADE_CMD_QUERY_CH;
|
|
|
- cmd.obj = OBJ_CHANNEL;
|
|
|
|
|
|
|
+ cmd.obj = OBJ_OVERALL;
|
|
|
cmd.chId = _over_chn_pwr_request.productChId;
|
|
cmd.chId = _over_chn_pwr_request.productChId;
|
|
|
cascade_request(&cmd);
|
|
cascade_request(&cmd);
|
|
|
|
|
|
|
|
ack_str = ctrl_sts_ack_to_json();
|
|
ack_str = ctrl_sts_ack_to_json();
|
|
|
http_reply(conn, 200, ack_str);
|
|
http_reply(conn, 200, ack_str);
|
|
|
- cJSON_free((void *)ack_str);
|
|
|
|
|
|
|
+ cJSON_free(ack_str);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1082,10 +1099,18 @@ static void channelStatusMonitoring(void* conn)
|
|
|
* todo:添加控制
|
|
* todo:添加控制
|
|
|
*/
|
|
*/
|
|
|
|
|
|
|
|
|
|
+ if(cur_dev_addr>0) {
|
|
|
|
|
+ cmd.cmd = CASCADE_CMD_OPEN;
|
|
|
|
|
+ cmd.obj = OBJ_CHANNEL;
|
|
|
|
|
+ cmd.chId = _over_chn_pwr_request.productChId;
|
|
|
|
|
+ cascade_request(&cmd);
|
|
|
|
|
+
|
|
|
|
|
+ ack_str = ctrl_sts_ack_to_json();
|
|
|
|
|
+ goto quit;
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
log_d("channel id:%d",_over_chn_pwr_request.productChId);
|
|
log_d("channel id:%d",_over_chn_pwr_request.productChId);
|
|
|
|
|
|
|
|
-
|
|
|
|
|
// product_chn_id = strtol(_over_chn_pwr_request.productChId,NULL,10);
|
|
// product_chn_id = strtol(_over_chn_pwr_request.productChId,NULL,10);
|
|
|
// log_d("productChId:%d",product_chn_id);
|
|
// log_d("productChId:%d",product_chn_id);
|
|
|
|
|
|
|
@@ -1125,6 +1150,17 @@ static void channelStatusMonitoring(void* conn)
|
|
|
*/
|
|
*/
|
|
|
char buff[256];
|
|
char buff[256];
|
|
|
int product_chn_id = 0 ;
|
|
int product_chn_id = 0 ;
|
|
|
|
|
+
|
|
|
|
|
+ if(cur_dev_addr>0) {
|
|
|
|
|
+ cmd.cmd = CASCADE_CMD_CLOSE;
|
|
|
|
|
+ cmd.obj = OBJ_CHANNEL;
|
|
|
|
|
+ cmd.chId = _over_chn_pwr_request.productChId;
|
|
|
|
|
+ cascade_request(&cmd);
|
|
|
|
|
+
|
|
|
|
|
+ ack_str = ctrl_sts_ack_to_json();
|
|
|
|
|
+ goto quit;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
// product_chn_id = strtol(_over_chn_pwr_request.productChId,NULL,10);
|
|
// product_chn_id = strtol(_over_chn_pwr_request.productChId,NULL,10);
|
|
|
// log_d("productChId:%d",product_chn_id);
|
|
// log_d("productChId:%d",product_chn_id);
|
|
|
product_chn_id = _over_chn_pwr_request.productChId;
|
|
product_chn_id = _over_chn_pwr_request.productChId;
|
|
@@ -1159,7 +1195,18 @@ static void channelStatusMonitoring(void* conn)
|
|
|
else if(strcmp(_over_chn_pwr_request.type,"save")==0)//负载
|
|
else if(strcmp(_over_chn_pwr_request.type,"save")==0)//负载
|
|
|
{
|
|
{
|
|
|
log_i("channel status request:save");
|
|
log_i("channel status request:save");
|
|
|
- log_d(rx_body_buf);
|
|
|
|
|
|
|
+
|
|
|
|
|
+ if(cur_dev_addr>0) {
|
|
|
|
|
+ cmd.cmd = CASCADE_CMD_SAVE;
|
|
|
|
|
+ cmd.obj = OBJ_CHANNEL;
|
|
|
|
|
+ cmd.chId = _over_chn_pwr_request.productChId;
|
|
|
|
|
+ cascade_request(&cmd);
|
|
|
|
|
+
|
|
|
|
|
+ ack_str = ctrl_sts_ack_to_json();
|
|
|
|
|
+ goto quit;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
GlobalPowerManger *_globalPowerMangerTemp = NULL;
|
|
GlobalPowerManger *_globalPowerMangerTemp = NULL;
|
|
|
list_for_each_entry(_globalPowerMangerTemp, &__globalDeviceManage._globalPowerManger.list, list)
|
|
list_for_each_entry(_globalPowerMangerTemp, &__globalDeviceManage._globalPowerManger.list, list)
|
|
|
{
|
|
{
|
|
@@ -1332,7 +1379,7 @@ static void channelStatusMonitoring(void* conn)
|
|
|
else if(strcmp(_over_chn_pwr_request.type,"listHdlTotalQuery")==0)
|
|
else if(strcmp(_over_chn_pwr_request.type,"listHdlTotalQuery")==0)
|
|
|
{
|
|
{
|
|
|
#if DBUG_INFO
|
|
#if DBUG_INFO
|
|
|
- log_i("over all request: listHdlTotalQuery\n");
|
|
|
|
|
|
|
+ log_i("over all request: listHdlTotalQuery\n");
|
|
|
#endif
|
|
#endif
|
|
|
|
|
|
|
|
int product_chn_id = 0 ;
|
|
int product_chn_id = 0 ;
|
|
@@ -1362,6 +1409,17 @@ static void channelStatusMonitoring(void* conn)
|
|
|
else if(strcmp(_over_chn_pwr_request.type,"threeTypeSave")==0)
|
|
else if(strcmp(_over_chn_pwr_request.type,"threeTypeSave")==0)
|
|
|
{
|
|
{
|
|
|
GlobalPowerManger *_globalPowerMangerTemp = NULL;
|
|
GlobalPowerManger *_globalPowerMangerTemp = NULL;
|
|
|
|
|
+
|
|
|
|
|
+ if(cur_dev_addr>0) {
|
|
|
|
|
+ cmd.cmd = CASCADE_CMD_SAVE3;
|
|
|
|
|
+ cmd.obj = OBJ_CHANNEL;
|
|
|
|
|
+ cmd.chId = _over_chn_pwr_request.productChId;
|
|
|
|
|
+ cascade_request(&cmd);
|
|
|
|
|
+
|
|
|
|
|
+ goto quit;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
list_for_each_entry(_globalPowerMangerTemp, &__globalDeviceManage._globalPowerManger.list, list)
|
|
list_for_each_entry(_globalPowerMangerTemp, &__globalDeviceManage._globalPowerManger.list, list)
|
|
|
{
|
|
{
|
|
|
if (_over_chn_pwr_request.productChId == _globalPowerMangerTemp->product_ch_id)
|
|
if (_over_chn_pwr_request.productChId == _globalPowerMangerTemp->product_ch_id)
|
|
@@ -1407,7 +1465,8 @@ static void channelStatusMonitoring(void* conn)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
#endif
|
|
#endif
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
|
|
+quit:
|
|
|
cJSON_Delete(cjson);
|
|
cJSON_Delete(cjson);
|
|
|
http_reply(conn, 200, ack_str);
|
|
http_reply(conn, 200, ack_str);
|
|
|
cJSON_free((void*)ack_str);
|
|
cJSON_free((void*)ack_str);
|