Message Processor
(Version 4.0)
General presentation
The message processor is a specific Alert module whose primary function is to process messages via scripts to extract alarm information and initiate processing accordingly (alarm activation or deactivation, acknowledgment).
Messages are any character strings, alphanumeric or binary, which may be issued from different sources:
1) Serial Link
Messages originate from an external system via a serial link (eg external printer output). Messages can be received asynchronously or solicited by the message processor (polling). Acknowledgments may be transmitted.
2) TCP/IP
Messages originate from an external application via a TCP / IP network, in connected mode (TCP), or as datagrams (UDP). Messages can be received asynchronously or solicited by the message processor (polling). Acknowledgments may be transmitted.
3) Alarm
Messages are transmitted in the contents of an Alert tag of type "String" declared as an event.
4) Short Messages (SMS)
Messages are transmitted by GSM mobile phones or modems in the form of mini-messages (SMS). Acknowledgment messages can be sent back.
5) API/Command line
Messages are transmitted through the software's programming interface (API) (AlertSendDataToScript or AlertSendMessageToScript) or via a command line (SendDataToScript).
6) Other
Messages are extracted directly into the body of the script using the available functions (standard functions or SCO add-on module). This can be, for example, information extracted from a file, a database or an email mailbox by the functions of file processing, ODBC interface or reading/writing of email.
7) Vocal Server
This feature, introduced from version 4.0 of the software, is used to create a specific voice server application through scripts for processing voice telephony communications, either incoming or outgoing calls.
The message processor is capable of processing messages from different sources simultaneously. Each process is described by a prototype with a set of parameters saved in a parameter file (file <prototype>.pro + file <prototype>.xml) associated with a script (file <prototype>.prg).
The script is a Basic type program which is executed by the message processor to extract the significant information of the messages and trigger the alert processes accordingly.
If the information contained in the messages is sufficiently rich, the script can dynamically create the alarms detected from the extracted information and then activate (or deactivate) the alarm. In this case, it will not be necessary to declare the alarms in Alert, except to add additional information.
If the information contained in the messages is insufficient (transmission of a simple event identifier for example), the alarms to be processed must be declared beforehand in Alert. The script will only activate (or deactivate) the declared alarms based on the received messages.
The Dynamic Importation Filters feature simplifies and standardizes scripting by externalizing the dynamic import template for alarms as configurable filters at the application level. The script simply updates a certain number of environment variables ("filter" variables) according to the information received and then invokes the "ProcessEvent" function which will analyze the defined filters to automatically create the tags corresponding to the information received.