OPC UA Subscriber Documentation
Version: 5.0.0
Retrieved: 2025-10-09 15:16:08
OPC UA Subscriber
The module is used to setup grouped subscriptions to an OPC UA server with a specified interval. When data is changed in the OPC UA server a message is sent from the module with the new values.
This module is designed to be located at the beginning of a flow.
Settings
In the settings you specify the URL and credentials used for setting up subscriptions on an OPC UA server. The NodeIds that are subscribed to can be loaded from a resource, entered manually or updated dynamically through an input message. You can also specify the sample interval used for monitoring the NodeIds.
When using resources to specify NodeIds to subscribe to, additional properties can be attached to each NodeId. These additional properties can be used in other modules in the flow for example to filter out certain NodeIds, apply scaling of values or just to add additional metadata. See the example below and the documentation for more information on the resource format.
| Name | Requirements | Purpose | Default |
|---|---|---|---|
| Server URL | The OPC UA server to setup subscriptions to | ||
| Disable module if no Server URL | bool | If true the flow will not attempt to start the module if no Server URL is configured | false |
| Accept Untrusted Certificate | If true the server certificate will be automatically trusted by the client. | true | |
| Auto-Generate Client Certificate | If false the module will not use a client certificate for the connection. | true | |
| Security Policy | None, Basic128Rsa15, Basic256, Basic256Sha256, Https | Define the algorithm to use for signing and message encryption (depending on the mode specified). | None |
| Security Mode | None, Sign, SignAndEncrypt | Define the mechanisms to secure the message exchange. | None |
| Target Property | string | The property to write the result into. If empty the result is written to the root. Note that dot-notation is allowed to write the result into a sub-object. | |
| Tags collection (Resource) | The resource to import NodeIds from | ||
| Additional tags to monitor | Any additional NodeIds to subscribe to, apart from the ones loaded from the resource or messages | ||
| Publish Interval | 0 seconds -> 24 hours | The sample interval for NodeIds | 1000 |
| Include Display Name | Include display name in the output. | false | |
| Include Browse Name | Include browse name in the output. | false |
Credential
This module contains an option to select credentials to use in the module. All credentials supported by the module are presented in a drop-down.
Input - Additional Tags
The module does not need any input. However additional nodes can be subscribed to by sending a message to the module. This message should have an array of NodeIds assigned to the property opcuasubscriber.nodeIds. The format of the array is the same as for OPC UA resources, see the documentation.
The NodeIds subscribed to at any time will be a combination of any manually entered NodeIds, any resource and the latest list through an input message.
Input - Refresh
If needed you can send in a message to the module with the property opcuasubscriber.refresh set to true. The module will then send out all values for the subscriptions (both from settings and from the opcuasubscriber.nodeIds if available).
Output
Each change of the value of a NodeId in the subscription will be individually sent out from the module into the next module(s).
| Name | Type | Description |
|---|---|---|
| displayName | string | A localized, human readable name for the node. Only present if enabled in the settings. |
| browseName | string | A non-localized, human readable name for the node. Only present if enabled in the settings. |
| name | string | Name set in settings when specifying NodeIds to read |
| dataType | string | OPC UA Data Type |
| nodeId | string | The identifier for the node in the address space of the OPC UA server |
| statusCode | string | Status code of reading a NodeId from the server |
| sourceTimestamp | string | The timestamp of the source from that the value originates |
| value | string | The value/result from the OPC UA server for the specific NodeId |
| custom | any | Custom properties added through the resources will be added to each output message |
Examples
Subscribing values from one NodeId from an OPC UA server.
# Settings:
Target Property = data
Server URL = opc.tcp://192.168.0.103:51210/UA/SampleServer
Tags collection (Resource) =
Additional tags to monitor =
Name = CC2001_ControlOut, Node Id = ns=5;i=29
Publish Interval = 1 second
Include Display Name = true
Include Browse Name = true
Security Mode = None
Security Policy = None
# Outgoing message:
{
"data": {
"displayName": "ControlOut",
"browserName": "4:ControlOut",
"name": "CC2001_ControlOut",
"dataType": "double",
"nodeId": "29",
"statusCode": "good",
"sourceTimestamp": "2018-12-21T08:14:23.6567987Z",
"value": 0.057499999999999996
},
"crosser": {
"success": true
}
}
Adding subscriptions by sending message to the module.
# Settings:
Target Property = data
Server URL = opc.tcp://192.168.0.103:51210/UA/SampleServer
Tags collection (Resource) =
Additional tags to monitor =
Name = CC2001_ControlOut, Node Id = ns=5;i=29
Publish Interval = 1 second
Include Display Name = false
Include Browse Name = false
Security Mode = None
Security Policy = None
# Incoming message:
{
"opcuasubscriber":{
"nodeIds": [
{
"nodeId": "ns=3;i=1003",
"name": "Sawtooth",
"additionalData": {
"a": 1,
"b": true
}
}
]
}
}
# Outgoing message:
{
"data": {
"nodeId": "ns=3;i=1003",
"name": "Sawtooth",
"additionalData": {
"a": 1,
"b": true
}
"index": 2,
"dataType": "Double",
"statusCode": "Good",
"sourceTimestamp": "2021-05-10T15:08:49Z",
"value": -0.4
},
"crosser": {
"success": true
}
}
Search Documentation
Data Sources
Industrial