iocShell Command Reference
Added in version 0.9: The unified opcuaSession, opcuaSubscription, and opcuaOptions commands
are replacing the older opcuaCreate... commands.
Session Management
Command opcuaSession
Configures a new OPC UA session.
opcuaSession <name> <serverURL> [<options>]
name: Unique name for the session.serverURL: Server endpoint (e.g.,opc.tcp://localhost:4840).options: Key-value pairs (e.g.,autoconnect=nordebug=1).
Commands opcuaConnect / opcuaDisconnect
Manually connect or disconnect sessions matching a glob pattern.
opcuaConnect <pattern>
opcuaDisconnect <pattern>
pattern: Session name glob pattern.
For sessions using the option autoconnect=y,
these commands will also switch the feature accordingly.
Command opcuaMapNamespace
Added in version 0.8: Maps a numerical namespace index used in the database to a URI on the server.
opcuaMapNamespace <session> <index> <URI>
session: Name of the session.index: Namespace index locally used.URI: URI in the server’s namespace table to mapindexto.
On the wire, namespaces are always integers. A few are reserved well-known namespaces for OPC UA or the server itself. The other namespaces are assigned by the server. Every namespace has a unique URI, which the server adds to a “namespace array”. The number of a namespace (used on the wire) is the index of its URI in the server’s namespace array.
If a server assigns numbers dynamically, the opcuaMapNamespace command
allows to map a namespace number used in the IOC’s databases
to its URI on the server.
Hint
In your session OPC1,
you want to connect to a device
that is dynamically mapped in the OPC UA server.
You know that the namespace URI is “urn:MyCompany:UaServer:node3”.
To connect, use an arbitrary namespace index in your databases, e.g. 42.
Then call
opcuaMapNamespace OPC1 42 urn:MyCompany:UaServer:node3
The IOC will download the server’s namespace array
and replace namespace index 42 in your records
with the correct index for the specified URI.
Subscription Management
Command opcuaSubscription
Configures a new subscription and binds it to an existing session.
opcuaSubscription <name> <session> <publishing_interval> [<options>]
name: Unique name for the subscription.session: Name of the session that this subscription is added to.publishing_interval: Publishing interval for the subscription [ms].options: Key-value pairs (e.g.,priority=50ordebug=1).
Setting Options
Command opcuaOptions
Sets options for existing sessions or subscriptions matching a pattern.
opcuaOptions <pattern> [<options>]
pattern: Session or Subscription name glob pattern.options: Key-value pairs (e.g.,autoconnect=nordebug=1).
Table of Session Options
Name |
Function |
|---|---|
General |
|
|
Verbosity level of debugging [default: |
|
Automatically connect/reconnect to server [ |
Batch and Throttle |
|
|
Maximum number of nodes used in any low-level service call |
|
Maximum number of nodes per read service call |
|
Timeout (holdoff period) after read service call [ms] |
|
Timeout (holdoff period) after read service call |
|
Maximum number of nodes per write service call |
|
Timeout (holdoff period) after write service call [ms] |
|
Timeout (holdoff period) after write service call |
Security |
|
|
Requested security mode [ |
|
Requested security policy [default: use best available] |
|
Set file to read identity credentials from |
Table of Subscription Options
Name |
Function |
|---|---|
|
Verbosity level of debugging [default: 0 = off] |
|
Priority of the subscription [0..255; default: 0 = lowest] |
OPC UA Security Management
Note
To connect without security,
you have to explicitly set the option sec-mode=None
for the session.
Command opcuaClientCertificate
Sets the client’s own certificate and private key.
opcuaClientCertificate <public_key> <private_key>
public_key: Path to the file containing the certificate (public key).private_key: Path to the file containing the private key.
Command opcuaSetupPKI
Sets the location of the PKI certificate store, where certificates and revocation lists are stored.
opcuaSetupPKI <PKI_location>
opcuaSetupPKI <server_certs> <server_revocation_lists> <issuer_certs> <issuer_revocation_lists>
PKI location: Path to the standard PKI directory structure.server_certs: Path to the location of trusted server certificates.server_revocation_lists: Path to the location of server revocation lists.issuer_certs: Path to the location of trusted issuer certificates.issuer_revocation_lists: Path to the location of issuer revocation lists.
Command opcuaSaveRejected
Sets the location where rejected server certificates are saved.
opcuaSaveRejected <rejected_cert_location>
rejected_cert_location: Path to the location for saving rejected server certificates.
Command opcuaShowSecurity
Shows discovered endpoints and security details for a session or (without argument) show security related information for the IOC.
opcuaShowSecurity <session>
opcuaShowSecurity
session: Name of the session to show security info for.
Inspection and Debugging
Command opcuaShow
Shows details for sessions, subscriptions, or records.
opcuaShow <pattern>, [<verbosity>]
pattern: Session or Subscription name glob pattern.verbosity: Sets amount of printed information.