| 
					
				 | 
			
			
				@@ -770,8 +770,10 @@ void sensorTemperatureMonitor(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       alarm[i] = 0;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (type_sensor[i] == TS_AKB) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         log_event_data(LOG_ALARM_SENSOR_AKB, "Норма");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } else if (type_sensor[i] == TS_CABINET) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         log_event_data(LOG_ALARM_SENSOR_CABINET, "Норма");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (sSettings.sTempControl[i].type_sensor == TS_AKB) {
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -779,12 +781,14 @@ void sensorTemperatureMonitor(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if(temperature == 85) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(!alarm[i]) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           log_event_data(LOG_ALARM_SENSOR_AKB, "Авария");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           flLedAlarm = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           alarm[i] = 1;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(alarm[i]) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           log_event_data(LOG_ALARM_SENSOR_AKB, "Норма");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           alarm[i] = 0;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -793,12 +797,14 @@ void sensorTemperatureMonitor(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if(temperature == 85) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(!alarm[i]) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           log_event_data(LOG_ALARM_SENSOR_CABINET, "Авария");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           flLedAlarm = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           alarm[i] = 1;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(alarm[i]) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           log_event_data(LOG_ALARM_SENSOR_CABINET, "Норма");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           alarm[i] = 0;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -822,6 +828,13 @@ void UPS_TemperatureHighRangeMonitor(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   if(temperature == 85) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     UPS.Alarm = (UPS.Alarm & 0xfffffffd) | (1 << 1);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (stateCurrent == HYST_UP) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      stateCurrent = HYST_IDLE;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      log_event_data(LOG_ALARM_HIGH_TEMP, "Норма");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // Отправка трапа о нормализации
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	    SNMP_SendUserTrap(BATTERY_HIGH_TEMPERATURE_NORM);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (stateCurrent == HYST_IDLE) {
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -874,6 +887,13 @@ void UPS_TemperatureLowRangeMonitor(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   if(temperature == 85) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     UPS.Alarm = (UPS.Alarm & 0xfffffeff) | (1 << 8);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (stateCurrent == HYST_DOWN) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      stateCurrent = HYST_IDLE;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      log_event_data(LOG_ALARM_LOW_TEMP, "Норма");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // Отправка трапа о нормализации
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	    SNMP_SendUserTrap(BATTERY_LOW_TEMPERATURE_NORM);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (stateCurrent == HYST_IDLE) {
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -928,6 +948,13 @@ void Cabinet_TemperatureHighRangeMonitor(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   if(temperature == 85) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     UPS.Alarm = (UPS.Alarm & 0xfffffdff) | (1 << 9);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (stateCurrent == HYST_UP) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      stateCurrent = HYST_IDLE;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      log_event_data(LOG_ALARM_HIGH_CABINET_TEMP, "Норма");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // Отправка трапа о нормализации
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	    SNMP_SendUserTrap(CABINET_HIGH_TEMPERATURE_NORM);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (stateCurrent == HYST_IDLE) {
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -981,6 +1008,13 @@ void Cabinet_TemperatureLowRangeMonitor(void) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   if(temperature == 85) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     UPS.Alarm = (UPS.Alarm & 0xfffffbff) | (1 << 10);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (stateCurrent == HYST_DOWN) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      stateCurrent = HYST_IDLE;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      log_event_data(LOG_ALARM_LOW_CABINET_TEMP, "Норма");
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // Отправка трапа о нормализации
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	    SNMP_SendUserTrap(CABINET_LOW_TEMPERATURE_NORM);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      flUpdateLog = true;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (stateCurrent == HYST_IDLE) {
 
			 |