Allows sending a test alarm by passing the 'testalarm [LEVEL]' command to the alarm pipeline monitor.
Also fixes a bug in the alarm sending whereby if one communication mechanism doesn't work (e.g. email fails) the others may not be tried, depending one what order the connection details are stored in the database. Now all are tried and an exception is nevertheless raised if one fails by log_alarm in AlarmMonitor.py.
In AlarmNode.log_alarm the exception is caught and an additional database parameter (silence_duration_cant_send) determines how long the pipeline should be silenced (to avoid sending a new alarm for every subsequent reading if there is still a problem.
Allows sending a test alarm by passing the 'testalarm [LEVEL]' command to the alarm pipeline monitor.
Also fixes a bug in the alarm sending whereby if one communication mechanism doesn't work (e.g. email fails) the others may not be tried, depending one what order the connection details are stored in the database. Now all are tried and an exception is nevertheless raised if one fails by log_alarm in AlarmMonitor.py.
In AlarmNode.log_alarm the exception is caught and an additional database parameter (silence_duration_cant_send) determines how long the pipeline should be silenced (to avoid sending a new alarm for every subsequent reading if there is still a problem.
For now, for pancake, this is set to 60 seconds.