Issue
Enhanced and Standard Alarm Delivery Explained
Product Line
Andover Continuum
Environment
Cyberstation
Cause
Information on the difference between Enhanced Alarm Delivery and Standard Alarm Delivery feature.
Resolution
Standard Alarm Delivery:
Prior to Continuum 1.7, alarms were delivered from the controller to each workstation on the network as long as a Cyberstation is online (from the controller's perspective) AND if the Cyberstation is a recipient of the alarm or not.
The first workstation which receives the alarm logs it to the SQL database. The alarm is broadcast and if for some reason it doesn't get logged there is no guarantee it will be delivered to any Cyberstastion. It gets broadcast once.
Enhanced Alarm Delivery:
The alarm engine was changed so that alarms could be delivered to Workstations that were temporarily offline.
To accomplish this Continuum implemented Microsoft Message Queuing (MSMQ).
The controllers generate alarms based on criteria set up in alarm enrollments. These are logged in the database by the first workstation that receives the alarm which then hands it off to MSMQ for delivery to all workstations in the recipient list. The controller still sends the alarms to all online workstations. If a workstation is offline, alarms are stored in an outgoing MSMQ queue that will be delivered once the Cyberstation is back online.
Acc.App.AlarmServer.exe (Alarm Delivery Server) is the process that handles alarms and hands them off to MSMQ which is handled by the Windows Message Queuing service.
To view MSMQ queues, go to [Windows Control Panel>Security Settings]> Administrative Tools> Computer Management> Services and Applications> Message Queuing
Enabling Enhanced Alarm Delivery when upgrading or with a new install
This is accomplished by leaving the default checkbox for Enhanced Alarm Delivery selected in the database initialization step on a new install or when upgrading to a version greater than 1.7x. MSMQ will then be installed as part of the Cyberstation installation or upgrade.
Note: If the Enhanced Alarm Logging checkbox is not checked initially, the Enhanced Alarm Delivery checkbox may become unselectable. See Installing Continuum Database for the First Time on a Multi-User LAN System in the Installation Guide
Enabling enhanced alarm delivery in a system that doesn’t have the checkbox selectable
1. Manually Install MSMQ
- Start> Run> type cmd then click OK (to open a command prompt)
- At the DOS prompt type cd\ then enter (places the cursor at the root)
- cd \program files\continuum\install then enter
- Type cscript MSMQInstall.js then enter (Windows component wizard Installs MSMQ)
- When the script is finished, one of the lines will indicate that MSMQ started successfully
- Type exit
2. Updating the database
Note: Ensure you have a recent database backup before the next step
- Run Database Initialization
- Select Server if LAN or Stand Alone accordingly
- Select Enhanced Alarm Delivery checkbox
- Select update existing database and then click continue
- Restart all Cyberstations (If ALL aren't restarted, the system can still be in mixed mode)
3. LAN installation
Manually install MSMQ on each Cyberstation according to the instructions above (step 1). MSMQ will now be used for guaranteed alarm delivery.
Caution:
Make sure that all Cyberststations in the database are restarted after Enhanced Alarm Delivery was selected and the DB Update performed!
Not restarting a Cyberstation puts the system at risk of using workstations with both types of alarm delivery (PSS may refer to this as MIXED MODE).
If all but one of the Cyberstations gets restarted and a Continuum User changes the alarm delivery mode and then a Cyberstation gets restarted later, the system
will be in mixed mode.
Uninstalling MSMQ
- Uninstalling MSMQ on a workstation (if needed at some point)
- Go to Control Panel> Add/Remove Windows Components> Deselect Message Queuing
- Say Yes to the warning message
- Reboot
Also, check the following:
- Add a column to the alarm list view check the loggingWSId and see if the alarms are being delivered to another workstation that is no longer used. If it is no longer needed delete that Workstation which should correct this issue.