Code and counter modules
- Last UpdatedJun 29, 2026
- 2 minute read
This topic lists modules used to process messages using custom code and counters.
Code modules
With code modules, custom processing of messages using either C# or Python code can be applied. Code can either be entered directly or uploaded via code files to the Resource library and then referenced from within modules.
|
Name |
Description |
|---|---|
|
Csharp |
Executes C# code which is compiled at runtime. Standard .NET libraries can be used but not 3rd party libraries. |
|
Python Bridge |
Run python code in a standard Python environment outside of .NET. With docker Python is bundled in the image provided by AVEVA. On Windows the Python environment must be installed separately and the local node configuration must be updated accordingly. Standard and 3rd party libraries can be used, including ML frameworks. |
Counter modules
The following table lists the different types of counter modules.
|
Name |
Description |
|---|---|
|
Message Counter |
Counts the values seen in a selected message property over a time period. At the end of a period, the number of occurrences of each value is listed with the relative count of each value. Useful for KPI calculations, such as Yield. If no source is specified, the total number of messages received is reported. |
|
Time Counter |
Counts the time elapsed in different states by looking at the values received on a specified property and the time between value changes. At the end of the period, the total time spent in each state (value) is reported with the relative times. Useful for KPI calculations such as Availability. |
|
Timeout |
Measures the time since the last update on a selected property. If no update is seen in a specified timeout period, a message is sent. Use this module to monitor expected traffic patterns. For example, knowing that data should arrive every second, this module is used to trigger an alert if no update is seen within two seconds. By keeping track of individual property values the module can operate on multi-source streams and trigger an alert as soon as one a value is missing from one of the sources. |