Alarming

The Ewon router integrates an alarm feature that can be combined with a notification system.

For every Ewon tag created in the Ewon gateway, you can associate it with an alarm system and define the alarm levels, activation delays, etc.
If the value of the Ewon tag exceeds the limits, then the Ewon router triggers the alarm.

The Ewon router has an alarm summary and an alarm history table:

  • Alarm Summary: lists all active alarms in the Ewon router and their current state.
  • Alarm History: lists all the various states the alarm has gone through such as when the alarm has been triggered, returned to normal, and acknowledged.

The alarm tables can be exported using the Export Block Descriptors.

For every alarm state - ALM, ACK, RTN and END - the Ewon router can send out notifications.
The Ewon router can, for example, send out an SMS (text messge), an email or put a file on an FTP server.

You can also script your own actions when the Ewon router triggers an alarm state using BASIC scripting or JAVA:

Example of Basic that will send an email:

ONALARM "MyTag","goto Action"
Action:
	sendmail "myemail@mail.com","","Alarm","RTank Level too high"
	DigitalOutput@ = 1
end

Example in Java

public class TagAlarmCallback {
	public void StartDefaultEventHandler() throws Exception
	{
		DefaultEventHandler.setDefaultTagAlarmListener(new MyTagAlarmListener());
		DefaultEventHandler.runEventManager();
	}
    
    public class MyTagAlarmListener extends EvtTagAlarmListener
	{
		public void callTagChanged()
		{
			try
			{
				System.out.println("Alarm changed: "+ getTagName() + 
                " Alarm Status:" +Integer.toString(getAlarmStatus()) +
                " Alarm Type:" +Integer.toString(getAlarmType()) +
                "CurrentValue: " + Double.toString(getTagValueAsDouble()));
         
				if ("Switch".equals(getTagName()))
					if (getAlarmStatus() == TagControl.ALARM_STATUS_ALM)
						ScheduledActionManager.SendMail("myEmail@domain.com", "myEmail@domain.com", "", "Alarm", "Tag 'Tank' in Alarm");
					}
					catch (Exception ex)
					{
         
				}
      }
   }
    
}