OPC_UA Read
x/opcuaRead Component: v0.28.0+ OPC UA Read component, used to read data from an OPC UA server. It can read data from a single node or multiple nodes.
Additional extension library required: rulego-components-iot (opens new window)
# Configuration
| Field | Type | Description | Default |
|---|---|---|---|
| server | string | OPC UA server address; supports ref:// to reuse a connection within the same chain | None |
| policy | string | Security policy, options include: None, Basic128Rsa15, Basic256, Basic256Sha256 | None |
| mode | string | Communication mode, options include: None, Sign, SignAndEncrypt | None |
| auth | string | Authentication method, options: Anonymous, UserName, Certificate | Anonymous |
| username | string | Username (required when auth is UserName) | None |
| password | string | Password (required when auth is UserName) | None |
| certFile | string | Certificate file path (required when auth is Certificate) | None |
| certKeyFile | string | Private key file path (required when auth is Certificate) | None |
| points | array | Point list (standard read method); each item has name/addr/type, addr = OPC UA NodeID | None |
Point Fields (points array element):
| Field | Type | Description |
|---|---|---|
| name | string | Point name; used as Data.name in output |
| addr | string | OPC UA NodeID, e.g. ns=2;s=Temperature |
| type | string | Data type, unified enum BOOL/INT16/UINT16/INT32/UINT32/INT64/UINT64/FLOAT32/FLOAT64/STRING |
Security Policy (policy) Options Meaning:
- None: No security policy is used.
- Basic128Rsa15: Uses basic 128-bit encryption and RSA15 signing.
- Basic256: Uses basic 256-bit encryption.
- Basic256Sha256: Uses basic 256-bit encryption and SHA256 signing.
Communication Mode (mode) Options Meaning:
- None: No mode is used.
- Sign: Message signing.
- SignAndEncrypt: Message signing and encryption.
Read Points (Standard Method): specified via the points configuration, where addr is the OPC UA NodeID. Format:
[
{"name": "temp", "addr": "ns=2;s=Temperature", "type": "FLOAT32"},
{"name": "humidity", "addr": "ns=2;s=Humidity", "type": "FLOAT32"}
]
1
2
3
4
2
3
4
Legacy Compatibility: you may also pass a NodeID list via the message payload msg.Data (kept for backward compatibility only; points is recommended). Format:
[
"ns=3;i=1003",
"ns=3;i=1005"
]
1
2
3
4
2
3
4
# Relation Type
- Success: Execution is successful, the message is sent to the
Successchain. - Failure: Execution fails, the message is sent to the
Failurechain.
# Execution Result
The query result is reassigned to msg.Data and passed to the next node through the Success chain, format:
[
{"name": "temp", "value": 25.3, "timestamp": 1721900000000000000, "error": ""}
]
1
2
3
2
3
Edit this page on GitHub (opens new window)
Last Updated: 2026/07/29, 07:07:39