7. Events Setup
- 1. Introduction
Overview of the Events tool — purpose, capabilities, and key concepts.
- 2. CENTO Events
Event editor, creating and editing events via UI or Excel, and flashing on diagrams.
- 3. Notifications Settings
Configuring email notifications, filter logic, and notification delivery examples.
- 4. Sound Editor
Uploading and managing .mp3 sound files for event alerts.
- 5. Examples of Event Setup
Practical examples: events on tag value change and device status change.
- Appendix: Formula Reference
Variables and operators available in event condition formulas.
1. Introduction
CENTO is a multifunctional software platform for data collection, processing, and display. This manual describes the Events user tool in CENTO.
It is assumed that the user is already familiar with the basic elements of the CENTO interface after reading the User Manual.
Events in CENTO are designed to increase the observability of system operation by tracking changes in the system status and process equipment, logging events, and notifying users. Events help personnel react in a timely manner to changes in the technological process and system operation. To achieve these goals, CENTO provides user notification and acknowledgement features alongside event logging.
2. CENTO Events
2.1. Event editor
To open the Event editor, select from the main menu: Settings → Events → Event editor.
Figure 2.1. Event editor in the CENTO menu
Figure 2.2 shows the Event editor interface.
Figure 2.2. Event editor
The Event editor page provides the following capabilities:
- Add a new event to the system

- Activate
or disable
selected events - Edit
, copy
, and delete
in the Actions column - Delete any number of events at once

- Edit the number of records displayed
- Search for events by filtering
(the filter is located to the right of the table headings) - Edit event configuration

- Adjust setpoint text

2.2. Creating and editing an event in the web interface
An event can be created manually or automatically. Events are automatically created when the setpoint parameter is enabled. For a detailed description, refer to the Setup Manual.
The text of setpoints can be edited in the Event editor interface. Click the button
. The Setpoint editing window opens (Figure 2.3), where the wording of setpoints for Triggering and/or Return can be modified, including Upper/Lower warning limit, Upper/Lower alarm limit, and Upper/Lower physical limit.
One or more variables can be specified in the setpoint triggering message:
{{.tag_name}}— tag name{{.tag_code}}— tag code{{.tag_id}}— tag ID{{.tag_code_or_id}}— tag code, or ID if the code is empty{{.tag_limit}}— setpoint value{{.tag_unit}}— tag units{{.device_name}}— name of the device the tag is linked to
{{.tag_name_2}}), the Operating Journal will receive an event of the form:
<no value> > 10.
Figure 2.3. Setpoint editing page
To create a new event, click the button
. Only an authorized user with appropriate rights can create and edit events.
Figure 2.4 shows the event creation page.
Figure 2.4. Event editor: creation page
The Event editor window contains the following fields:
- Identifier — the sequence number of the event (filled in automatically); can be changed if needed.
- Name — the name of the event.
- Object — an object from the CENTO Information Model (IM) to which the event refers. The IM object is selected from a drop-down tree.
- Device — the device to which the event refers, selected from the drop-down device tree.
- Event type — switches the event type between “Single” and “With return”
. - Tags — the ID of the telemetering tag to which the event belongs.
- Message — the message text output when the event is triggered.
- Formula — the condition for the event to be triggered. Click
to open the list of available formulas (see Appendix). - Dead time (ms) — delay time in milliseconds before the event is generated. Helps prevent false events caused by intermittent communication failures.
- Type — a drop-down list for the importance or category of the event.
- Acknowledgement — a switch to enable user acknowledgement of event notification.
- Sound — selects a sound for notification from those loaded in the Sound Editor (see section 4). The selected sound can be previewed using the button
to the right of the “Sound” field. - Before acknowledgement — a switch to play the selected sound until the event is acknowledged.
- Sound repeats — number of repetitions of sound playback when the event occurs.
- Left-click to the left of the address bar (Figure 2.5) and select Site settings.
- Go to Privacy and security → Site settings → Additional permissions → Sound and select Allow (Figure 2.6).
- Refresh the CENTO page.
Figure 2.5. Site settings — opening permissions
Figure 2.6. Allowing sound playback for the site
After filling in all required fields, click
and update the configuration (Figure 2.7).
Figure 2.7. Update configuration
When With return is selected as the event type, the Event editor displays additional fields with the heading With return (Figure 2.8). These fields are identical to those for the Single event type.
Figure 2.8. Event editor with “With return” type
2.3. Creating and editing events using Excel
Events can be configured using Excel files. This function is available at Settings → Configuration Files (Figure 2.9).
Figure 2.9. Import/Export configuration file page
To configure events, download the events.xlsx file by clicking
, then fill in the appropriate cells in a new row in the Events tab (Figure 2.10).
Figure 2.10. Events tab in events.xlsx
Fill in the following columns to create an event:
- Event ID — unique event number. Must not duplicate existing IDs in the system.
- Name — event name.
- Event type —
one_positionortwo_position. - Event status —
1= enabled,0= disabled. - Device ID — device identifier the event refers to.
- Device — auto-generated when downloading; shows the device path for debugging. Do not fill in manually.
- Object ID — IM object identifier the event refers to.
- Object — auto-generated when downloading; shows the object path for debugging. Do not fill in manually.
- Tags — tag (parameter) ID the event refers to.
- Formula — condition for triggering the event (see Appendix).
- Dead time, ms — delay time in milliseconds before event generation.
- Event type code — code from the Event type directory in the separate tab of this file.
- Event type name — filled in automatically when uploading/downloading.
- Message — message text displayed in logs when the event is triggered.
- Acknowledgement —
True= enabled,False= disabled. - Sound ID — ID of a sound file loaded through the Sound Editor.
- Sound name — filled in automatically when uploading/downloading.
- Repeat count — number of sound repetitions when the event is triggered.
- Infinity repeat —
True= repeat until acknowledged,False= use repeat count.
After filling in all required fields, upload the file using the
button on the Import/Export configuration file page (Figure 2.9). In the dialog (Figure 2.11), select the filled-in events.xlsx. The system will automatically validate the file (Figure 2.12).
Figure 2.11. Upload configuration file window
Figure 2.12. Validating the configuration file
If errors are detected, they will be displayed in the upload window. After all errors are corrected, the Write configuration button becomes available. After uploading, refresh the configuration to apply changes (see Figure 2.7).
, then click
and select Download. The downloaded events.xlsx will contain only the filtered events. To upload changes, click the same button and select Upload. Events not included in the download will remain unchanged.2.4. Flashing on the diagram
An object on a mimic diagram can be configured to flash (blink) when an event is active. There are two methods:
Method 1: Flashing by tag
Use this method if the information model is not configured or not planned. Steps:
-
Set up an event with the triggering formula, for example, connection loss
(
ti40027171 != 1) or restoration (ti40027171 == 1) — any tag registered in the system can be used (Figure 2.13). -
Create a calculated tag with the formula
[devstatusNN]where NN is the device ID (Figure 2.14). The tag to be used for the designated purpose may get its value from a real device or may be based on other tags. - Set up an object on the diagram, referencing the calculated tag from step 2 in its rules (Figure 2.15).
- After saving the diagram and updating the configuration, if the status of the NN device changes, the system will start flashing the bound diagram object until it is acknowledged.
Figure 2.13. Event configured for tag-based flashing
Figure 2.14. Calculated tag for diagram flashing
Figure 2.15. Diagram object rules referencing the calculated tag
Method 2: Flashing by information model object
For this method, the information model must be configured and the required IM object must be selected in the event's Object field. The diagram object must be active (see the Diagrams Development Manual) and bound to the same IM object. Steps:
- Create an event with the IM object selected in the Object field (Figure 2.16).
- Create an active diagram object bound to the same IM object (Figure 2.17).
Figure 2.16. Creating an event with an information model object
Figure 2.17. Diagram object bound to the information model
3. Notifications Settings
3.1. Creating and editing notifications
CENTO can notify users about triggered events via email. To configure notifications, go to Settings → Events → Notifications. Mail server configuration is described in the Setup Manual, Mail Servers.
Figure 3.1. Notifications interface
The notification table contains the following columns:
- Name — notification name.
- Emails — email addresses configured to receive notifications.
- Dispatch period — the time of day allowed for sending notifications.
- Iteration period — minimum time interval between notifications (notifications cannot be sent more frequently than this period).
- Operation threshold — number of event triggers required before a notification is sent.
- State — on/off.
- Actions — edit
, copy
, delete
.
To create a new notification, click
. Only an authorized user with appropriate permissions can create and edit notifications.
Figure 3.2. Notifications: creation page
Fill in the following fields in the Notification settings tab:
- Name — notification name.
- State — enables or disables the notification.
- Operation threshold — number of event triggers required before a notification is sent.
- Dispatch period — the time of day allowed for sending notifications.
- Iteration period — minimum time interval between notifications.
- Delay (s) — accumulation window starting from the first event before the notification is sent.
- E-mail server — mail server for sending notifications (configured in Settings → Email servers).
- Recipients — email addresses of notification recipients.
In the Event selection tab (Figure 3.3), tick the events required for notification in the left column and click
to move them to the right column. To remove events, mark them in the right column and click
.
Figure 3.3. Event selection tab
After filling in all fields, click
and update the configuration.
3.2. Notification operation
There are three filter types that control when notifications are sent:
- Operation threshold
- Iteration period
- Dispatch period
When configured without any restrictions, a notification is sent whenever any of the configured events is triggered.
Operation threshold
A notification is triggered when the total number of triggered events in the notification reaches the configured threshold. If the threshold is 0, the notification is generated immediately after any event triggers, provided the other filters allow it.
Iteration period
The iteration period starts from the time the last notification was triggered. It is set in days and hours. If set to 0 days 0 hours, notifications are generated and sent immediately when the other filter conditions are met.
Dispatch period
If set to 0:00–24:00, notifications can be sent at any time of day. If set to a specific time (e.g. 8:00), notifications are batched and sent once at that time. The dispatch period can only be set within a single calendar day.
Figure 3.4. Logic of filter settings when generating notifications
Changing notification settings
When notification settings are changed at any time:
- The operation threshold counter is preserved but the notification will not trigger until the next event after the threshold is reached.
- The iteration period is reset.
Examples:
- Threshold = 5, 3 events triggered. User increases threshold to 10 → notification fires after 7 more events (total 10).
- Threshold = 10, 7 events triggered. User reduces threshold to 5 → notification fires after the next event (total 8 triggered events).
- Iteration period = 10 hours, last notification sent 2 hours ago. Settings changed → iteration period resets and notification fires on the next event trigger.
- Threshold = 10, notification has 3 events, event #1 triggered twice. User deletes event #1 from notification. When total reaches 10, notification is sent without event #1’s messages.
Figure 3.5. Notification with operation threshold
Figure 3.6. Notification with dispatch period
Figure 3.7. Notification with all restrictions active
4. Sound Editor
Sound notifications are managed at Settings → Events → Sound editor.
Figure 4.1. Sound Editor page
The Sound Editor shows a table with the following columns: ID, Name, File name, Uploaded (date), and Actions (edit, play, delete).
To add a new sound, click
. In the pop-up (Figure 4.2), specify the name, select or drag-and-drop the .mp3 file, and click
.
Figure 4.2. New sound upload window
5. Examples of Event Setup
The following examples use the web interface on the event creation page described in section 2.2.
Example 1: Event on tag value change
Figure 5.1. Event setup on tag value change
Figure 5.1 shows the event Switch position f.1.1 (1QF1) configured as a one-position event bound to an IM object and a device. The formula ti11013008 == 2 triggers the event when tag 11013008 equals 2. Dead time is 0 (no delay), acknowledgement is enabled, and the default sound plays 5 times.
Example 2: Event on device status change (with return)
Figure 5.2. Event setup on device status change
Figure 5.2 shows a paired event with return. Two notifications are configured:
-
Lost connection with Mikrotik SW1.2 — formula
(devstatus100 == 3) AND (devprevstatus100 != 3), meaning device ID 100 just entered error status. Dead time = 3000 ms; alarm type with acknowledgement; sound plays until acknowledged. -
Restored connection with Mikrotik SW1.2 — formula
(devstatus100 == 1) AND (devprevstatus100 != 1), meaning device ID 100 just returned to normal status. Informational type; no acknowledgement required; sound plays 3 times.
Appendix: Formula Reference
Formulas can include arithmetic operations, conditions, mathematical and special functions, and pre-calculated measurements (up to three levels of nesting).
| Variable | Description |
|---|---|
[tiN] | Current value of tag with ID N |
[prevN] | Previous value of the tag with ID N |
[statusN] | Current status of tag with ID N |
[prevstatusN] | Previous status of tag with ID N |
[lasttimeN] | Current timestamp of the tag with ID N |
[beforetimeN] | Previous timestamp of the tag with ID N |
[devstatusN] | Current device status: 0 = disabled; 1 = normal; 2 = at least one TI with abnormal quality; 3 = polling error (unavailable); 4 = manual input; 7 = waiting for data |
[devprevstatusN][prevdevstatusN] | Previous device status (same status codes as above) |
[devlastdtN] | Time when the latest device data was received |
[devpingtimeN] | Response time (ms) to ICMP ping of device N |
[connectedN] | Connection with device N restored |
[!connectedN] | Connection with device N is lost |
| Operator | Description | Example | Result |
|---|---|---|---|
+ | Addition | 5 + 5 | 10 |
- | Subtraction | 5 - 3 | 2 |
* | Multiplication | 0.01 * [val] | 0.01 × val |
/ | Division | [val] / 1000 | val / 1000 |
% | Modulo (remainder) | 10 % 3 | 1 |
= | Assigns a value to a tag | [ti123] = 5 | 5 |
== | Equal (returns true/false) | 2 == 2 | true |
<, >, <=, >= | Arithmetic comparison | 2 >= 3 | false |
&&, &, AND, and | Logical AND | (devstatus1==1) AND (devstatus2==1) | true if both |
||, |, OR, or | Logical OR | (devstatus1==3) OR (devstatus2==3) | true if either |