Opc.Ua.Client
Stores the options to use for a browse operation.
Creates an unattached instance of a browser.
Creates new instance of a browser and attaches it to a session.
Creates a copy of a browser.
Sets all private fields to default values.
The session that the browse is attached to.
The view to use for the browse operation.
The maximum number of refrences to return in a single browse operation.
The direction to browse.
The reference type to follow.
Whether subtypes of the reference type should be included.
The classes of the target nodes.
The results to return.
Raised when a browse operation halted because of a continuation point.
Whether subsequent continuation points should be processed automatically.
Browses the specified node.
Checks the state of the browser.
Fetches the next batch of references.
The continuation point.
if set to true the browse operation is cancelled.
The next batch of references
The event arguments provided a browse operation returns a continuation point.
Creates a new instance.
Whether the browse operation should be cancelled.
Whether subsequent continuation points should be processed automatically.
The references that have been fetched so far.
A delegate used to received browser events.
Defines numerous re-useable utility functions for clients.
EventSource for client.
The default discover operation timeout.
Discovers the servers on the local machine.
The configuration.
A list of server urls.
Discovers the servers on the local machine.
The configuration.
Operation timeout in milliseconds.
A list of server urls.
Finds the endpoint that best matches the current settings.
The discovery URL.
if set to true select an endpoint that uses security.
The best available endpoint.
Finds the endpoint that best matches the current settings.
The discovery URL.
if set to true select an endpoint that uses security.
Operation timeout in milliseconds.
The best available endpoint.
Finds the endpoint that best matches the current settings.
Finds the endpoint that best matches the current settings.
Finds the endpoint that best matches the current settings.
The application configuration.
The discovery URL.
if set to true select an endpoint that uses security.
The best available endpoint.
Finds the endpoint that best matches the current settings.
The application configuration.
The discovery URL.
if set to true select an endpoint that uses security.
The timeout for the discover operation.
The best available endpoint.
Select the best supported endpoint from an
EndpointDescriptionCollection, with or without security.
Convert the discoveryUrl to a Uri and modify endpoint as per connection scheme if required.
The EventSource log interface.
A class that holds the configuration for a UA service.
The default constructor.
Sets private members to default values.
The node id for the dictionary.
The display name for the dictionary.
The node id for the type system.
The display name for the type system.
The type dictionary.
The data type dictionary DataTypes
Loads the dictionary identified by the node id.
Loads the dictionary identified by the node id.
Returns true if the dictionary contains the data type description;
Returns the schema for the specified type (returns the entire dictionary if null).
Retrieves the type system for the dictionary.
Retrieves the data types in the dictionary.
In order to allow for fast Linq matching of dictionary
QNames with the data type nodes, the BrowseName of
the DataType node is replaced with Value string.
Reads the contents of multiple data dictionaries.
Reads the contents of a data dictionary.
Validates the type dictionary.
The encoded dictionary to validate.
Throw if an error occurred.
Validates the type dictionary.
The encoded dictionary to validate.
A table of imported namespace schemas.
Throw if an error occurred.
Object that creates instances of an Opc.Ua.Client.Session object.
The Opc.Ua.Client namespace defines classes which can be used to implement a UA client.
These classes manage client side state information, provide higher level abstractions for UA
tasks such as managing sessions/subscriptions and saving/restoring connection information for
later use.
A client side cache of the server's type model.
Loads the UA defined types into the cache.
The context.
Removes all nodes from the cache.
Fetches a node from the server and updates the cache.
Fetches a node collection from the server and updates the cache.
Adds the supertypes of the node to the cache.
Returns the references of the specified node that meet the criteria specified.
Returns the references of the specified nodes that meet the criteria specified.
Returns a display name for a node.
Returns a display name for a node.
Returns a display name for the target of a reference.
Builds the relative path from a type to a node.
Used to handle renews of user identity tokens before reconnect.
The delegate used to receive keep alive notifications.
The delegate used to receive publish notifications.
The delegate used to receive pubish error notifications.
Manages a session with a server.
Raised when a keep alive arrives from the server or an error is detected.
Once a session is created a timer will periodically read the server state and current time.
If this read operation succeeds this event will be raised each time the keep alive period elapses.
If an error is detected (KeepAliveStopped == true) then this event will be raised as well.
Raised when a notification message arrives in a publish response.
All publish requests are managed by the Session object. When a response arrives it is
validated and passed to the appropriate Subscription object and this event is raised.
Raised when an exception occurs while processing a publish response.
Exceptions in a publish response are not necessarily fatal and the Session will
attempt to recover by issuing Republish requests if missing messages are detected.
That said, timeout errors may be a symptom of a OperationTimeout that is too short
when compared to the shortest PublishingInterval/KeepAliveCount amount the current
Subscriptions. The OperationTimeout should be twice the minimum value for
PublishingInterval*KeepAliveCount.
Raised when a subscription is added or removed
Raised to indicate the session is closing.
The factory which was used to create the session.
Gets the endpoint used to connect to the server.
Gets the name assigned to the session.
Gets the period for wich the server will maintain the session if there is no communication from the client.
Gets the local handle assigned to the session.
Gets the user identity currently used for the session.
Gets a list of user identities that can be used to connect to the server.
Gets the table of namespace uris known to the server.
Gest the table of remote server uris known to the server.
Gets the system context for use with the session.
Gets the factory used to create encodeable objects that the server understands.
Gets the cache of the server's type tree.
Gets the cache of nodes fetched from the server.
Gets the context to use for filter operations.
Gets the locales that the server should use when returning localized text.
Gets the data type system dictionaries in use.
Gets the subscriptions owned by the session.
Gets the number of subscriptions owned by the session.
If the subscriptions are deleted when a session is closed.
Gets or Sets the default subscription for the session.
Gets or Sets how frequently the server is pinged to see if communication is still working.
This interval controls how much time elaspes before a communication error is detected.
If everything is ok the KeepAlive event will be raised each time this period elapses.
Returns true if the session is not receiving keep alives.
Set to true if the server does not respond for 2 times the KeepAliveInterval.
Set to false is communication recovers.
Gets the time of the last keep alive.
Gets the number of outstanding publish or keep alive requests.
Gets the number of outstanding publish or keep alive requests which appear to be missing.
Gets the number of good outstanding publish requests.
Stores the operation limits of a OPC UA Server.
If the subscriptions are transferred when a session is reconnected.
Default false, set to true if subscriptions should
be transferred after reconnect. Service must be supported by server.
Raised before a reconnect operation completes.
Reconnects to the server after a network failure.
Reconnects to the server after a network failure using a waiting connection.
Saves all the subscriptions of the session.
The file path.
Saves a set of subscriptions to a stream.
Saves a set of subscriptions to a file.
Load the list of subscriptions saved in a file.
The stream.
The list of loaded subscriptions
Load the list of subscriptions saved in a file.
The file path.
The list of loaded subscriptions
Updates the local copy of the server's namespace uri and server uri tables.
Updates the cache with the type and its subtypes.
This method can be used to ensure the TypeTree is populated.
Updates the cache with the types and its subtypes.
This method can be used to ensure the TypeTree is populated.
Returns the available encodings for a node
The variable node.
Returns the data description for the encoding.
The encoding Id.
Returns the data dictionary that contains the description.
The description id.
Returns the data dictionary that contains the description.
The dictionary id.
The dictionary.
Loads all dictionaries of the OPC binary or Xml schema type system.
The type system.
Reads the values for the node attributes and returns a node object.
The nodeId.
Reads the values for the node attributes and returns a node object.
If the nodeclass is known, only the supported attribute values are read.
The nodeId.
The nodeclass of the node to read.
Read optional attributes.
Reads the values for the node attributes and returns a node object.
Reads the nodeclass of the nodeIds, then reads
the values for the node attributes and returns a node object collection.
The nodeId collection.
The node collection read from the server.
The errors occured reading the nodes.
Set to true if optional attributes should not be omitted.
Reads the values for the node attributes and returns a node object collection.
If the nodeclass for the nodes in nodeIdCollection is already known,
and passed as nodeClass, reads only values of required attributes.
Otherwise NodeClass.Unspecified should be used.
The nodeId collection to read.
The nodeClass of all nodes in the collection. Set to NodeClass.Unspecified if the nodeclass is unknown.
The node collection that is created from attributes read from the server.
The errors that occured reading the nodes.
Set to true if optional attributes should not be omitted.
Reads the value for a node.
The node Id.
Reads the value for a node an checks that it is the specified type.
The node id.
The expected type.
Reads the values for a node collection. Returns diagnostic errors.
The node Id.
The data values read from the server.
The errors reported by the server.
Fetches all references for the specified node.
The node id.
Fetches all references for the specified nodes.
The node id collection.
A list of reference collections.
The errors reported by the server.
Establishes a session with the server.
The name to assign to the session.
The user identity.
Establishes a session with the server.
The name to assign to the session.
The session timeout.
The user identity.
The list of preferred locales.
Establishes a session with the server.
The name to assign to the session.
The session timeout.
The user identity.
The list of preferred locales.
If set to true then the domain in the certificate must match the endpoint used.
Updates the preferred locales used for the session.
The preferred locales.
Updates the user identity and/or locales used for the session.
The user identity.
The preferred locales.
Finds the NodeIds for the components for an instance.
Reads the values for a set of variables.
The variable ids.
The expected types.
The list of returned values.
The list of returned errors.
Reads the display name for a set of Nodes.
Reads the values for the node attributes and returns a node object collection.
If the nodeclass for the nodes in nodeIdCollection is already known
and passed as nodeClass, reads only values of required attributes.
Otherwise NodeClass.Unspecified should be used.
The nodeId collection to read.
The nodeClass of all nodes in the collection. Set to NodeClass.Unspecified if the nodeclass is unknown.
Set to true if optional attributes should not be omitted.
The cancellation token.
The node collection and associated errors.
Reads the value for a node.
The node Id.
The cancellation token for the request.
Reads the values for the node attributes and returns a node object.
The nodeId.
The cancellation token for the request.
Reads the values for the node attributes and returns a node object.
If the nodeclass is known, only the supported attribute values are read.
The nodeId.
The nodeclass of the node to read.
Read optional attributes.
The cancellation token for the request.
Reads the values for the node attributes and returns a node object collection.
Reads the nodeclass of the nodeIds, then reads
the values for the node attributes and returns a node collection.
The nodeId collection.
If optional attributes to read.
The cancellation token.
Reads the values for a node collection. Returns diagnostic errors.
The node Id.
The cancellation token for the request.
Disconnects from the server and frees any network resources with the specified timeout.
Close the session with the server and optionally closes the channel.
Disconnects from the server and frees any network resources with the specified timeout.
Disconnects from the server and frees any network resources with the default timeout.
Close the session with the server and optionally closes the channel.
Disconnects from the server and frees any network resources with the specified timeout.
Disconnects from the server and frees any network resources with the specified timeout.
Adds a subscription to the session.
The subscription to add.
Removes a subscription from the session.
The subscription to remove.
Removes a list of subscriptions from the session.
The list of subscriptions to remove.
Transfers a list of Subscriptions from another session.
Removes a transferred subscription from the session.
Called by the session to which the subscription
is transferred to obtain ownership. Internal.
The subscription to remove.
Removes a subscription from the session.
The subscription to remove.
Removes a list of subscriptions from the sessiont.
The list of subscriptions to remove.
Invokes the Browse service.
The request header.
The view to browse.
The node to browse.
The maximum number of returned values.
The browse direction.
The reference type id.
If set to true the subtypes of the ReferenceType will be included in the browse.
The node class mask.
The continuation point.
The list of node references.
Begins an asynchronous invocation of the Browse service.
The request header.
The view to browse.
The node to browse.
The maximum number of returned values..
The browse direction.
The reference type id.
If set to true the subtypes of the ReferenceType will be included in the browse.
The node class mask.
The callback.
Finishes an asynchronous invocation of the Browse service.
The result.
The continuation point.
The list of node references.
Invokes the BrowseNext service.
Begins an asynchronous invocation of the BrowseNext service.
Finishes an asynchronous invocation of the BrowseNext service.
Calls the specified method and returns the output arguments.
The NodeId of the object that provides the method.
The NodeId of the method to call.
The input arguments.
The list of output argument values.
Sends an additional publish request.
Sends a republish request.
Object that creates instances of an ISessions object.
Creates a new communication session with a server by invoking the CreateSession service
The configuration for the client application.
The endpoint for the server.
If set to true the discovery endpoint is used to update the endpoint description before connecting.
The name to assign to the session.
The timeout period for the session.
The identity.
The user identity to associate with the session.
The new session object
Creates a new communication session with a server by invoking the CreateSession service
The configuration for the client application.
The endpoint for the server.
If set to true the discovery endpoint is used to update the endpoint description before connecting.
If set to true then the domain in the certificate must match the endpoint used.
The name to assign to the session.
The timeout period for the session.
The user identity to associate with the session.
The preferred locales.
The new session object.
Creates a new communication session with a server using a reverse connection.
The configuration for the client application.
The client endpoint for the reverse connect.
The endpoint for the server.
If set to true the discovery endpoint is used to update the endpoint description before connecting.
If set to true then the domain in the certificate must match the endpoint used.
The name to assign to the session.
The timeout period for the session.
The user identity to associate with the session.
The preferred locales.
The new session object.
Creates a new communication session with a server using a reverse connect manager.
The configuration for the client application.
The reverse connect manager for the client connection.
The endpoint for the server.
If set to true the discovery endpoint is used to update the endpoint description before connecting.
If set to true then the domain in the certificate must match the endpoint used.
The name to assign to the session.
The timeout period for the session.
The user identity to associate with the session.
The preferred locales.
The cancellation token.
The new session object.
Recreates a session based on a specified template.
The ISession object to use as template
The new session object.
Recreates a session based on a specified template.
The ISession object to use as template
The waiting reverse connection.
The new session object.
A monitored item.
Initializes a new instance of the class.
Initializes a new instance of the class.
The client handle. The caller must ensure it uniquely identifies the monitored item.
Initializes a new instance of the class.
The template used to specify the monitoring parameters.
Initializes a new instance of the class.
The template used to specify the monitoring parameters.
if set to true the event handlers are copied.
Initializes a new instance of the class.
The template used to specify the monitoring parameters.
if set to true the event handlers are copied.
if set to true the clientHandle is of the template copied.
Called by the .NET framework during deserialization.
Sets the private members to default values.
A display name for the monitored item.
The start node for the browse path that identifies the node to monitor.
The relative path from the browse path to the node to monitor.
A null or empty string specifies that the start node id should be monitored.
The node class of the node being monitored (affects the type of filter available).
The attribute to monitor.
The range of array indexes to monitor.
The encoding to use when returning notifications.
The monitoring mode.
The sampling interval.
The filter to use to select values to return.
The length of the queue used to buffer values.
Whether to discard the oldest entries in the queue when it is full.
Server-assigned id for the MonitoredItem.
The subscription that owns the monitored item.
A local handle assigned to the monitored item.
Whether the item has been created on the server.
The identifier assigned by the client.
The node id to monitor after applying any relative path.
Whether the monitoring attributes have been modified since the item was created.
The status associated with the monitored item.
Returns the queue size used by the cache.
The last value or event received from the server.
Read all values in the cache queue.
Read all events in the cache queue.
The last message containing a notification for the item.
Raised when a new notification arrives.
Saves a data change or event in the cache.
Creates a deep copy of the object.
Sets the error status for the monitored item.
Updates the object with the results of a translate browse path request.
Updates the object with the results of a create monitored item request.
Updates the object with the results of a modify monitored item request.
Updates the object with the results of a transfer subscription request.
Updates the object with the results of a delete monitored item request.
Returns the field name the specified SelectClause in the EventFilter.
Returns value of the field name containing the event type.
Returns value of the field name containing the event type.
Returns value of the field name containing the event type.
Returns value of the field name containing the event type.
Returns value of the field name containing the event type.
The service result for a data change notification.
The service result for a field in an notification (the field must contain a Status object).
Throws an exception if the flter cannot be used with the node class.
Sets the default event filter.
The event arguments provided when a new notification message arrives.
Creates a new instance.
The new notification.
The delegate used to receive monitored item value notifications.
An item in the cache
Constructs a cache for a monitored item.
The size of the queue to maintain.
The last value received from the server.
Returns all values in the queue.
Saves a notification in the cache.
Changes the queue size.
Saves the events received from the srever.
Constructs a cache for a monitored item.
The size of the queue to maintain.
The last event received.
Returns all events in the queue.
Saves a notification in the cache.
Changes the queue size.
The current status of monitored item.
Creates a empty object.
The identifier assigned by the server.
Whether the item has been created on the server.
Any error condition associated with the monitored item.
The node id being monitored.
The attribute being monitored.
The range of array indexes to being monitored.
The encoding to use when returning notifications.
The monitoring mode.
The identifier assigned by the client.
The sampling interval.
The filter to use to select values to return.
The length of the queue used to buffer values.
Whether to discard the oldest entries in the queue when it is full.
Updates the monitoring mode.
Updates the object with the results of a translate browse paths request.
Updates the object with the results of a create monitored item request.
Updates the object with the results of a transfer monitored item request.
Updates the object with the results of a modify monitored item request.
Updates the object with the results of a delete item request.
Sets the error state for the monitored item status.
An implementation of a client side nodecache.
Initializes the object with default values.
Finds a set of nodes in the nodeset,
fetches missing nodes from server.
The node identifier collection.
Event source for high performance logging.
The client messages.
The Client Event Ids used for event messages, when calling ILogger.
The state of the client subscription.
The notification message. Called internally to convert wrapped value.
A notification received in Publish complete.
A Publish begin received.
A Publish complete received.
Log a Notification.
The implementation of a reverse connect client manager.
This reverse connect manager allows to register for reverse connections
with various strategies:
i) take any connection.
ii) filter for a specific application Uri and Url scheme.
iii) filter for the Url.
Second, any filter can be combined with the Once or Always flag.
A default value for reverse hello configurations, if undefined.
This value is used as wait timeout if the value is undefined by a caller.
Internal state of the reverse connect manager.
Internal state of the reverse connect host.
Specify the strategy for the reverse connect registration.
Undefined strategy, defaults to Once.
Remove entry after reverse connect callback.
Always callback on matching url or uri.
Flag for masking any connection.
Respond to any incoming reverse connection,
remove entry after reverse connect callback.
Respond to any incoming reverse connection,
always callback.
Entry for a client reverse connect registration.
Record to store information on a client
registration for a reverse connect event.
Register with the server certificate.
Initializes the object with default values.
Dispose implementation.
An overrideable version of the Dispose.
true to release both managed and unmanaged resources; false to release only unmanaged resources.
Raised when the configuration changes.
The sender.
The instance containing the event data.
Called when the configuration is changed on disk.
The configuration.
Called when the reverse connect configuration is changed.
An empty configuration or null stops service on all configured endpoints.
The client endpoint configuration.
Open host ports.
Close host ports.
Dispose the hosts;
Add endpoint for reverse connection.
Starts the server application.
The configuration.
Starts the server application.
The configuration.
Clears all waiting reverse connectino handlers.
Helper to wait for a reverse connection.
Register for a waiting reverse connection.
The endpoint Url of the reverse connection.
Optional. The server application Uri of the reverse connection.
The callback
The reverse connect callback strategy.
Unregister reverse connection callback.
The hashcode returned by the registration.
Called before the server stops
Called to start hosting the reverse connect ports.
Remove configuration endpoints from list.
Add endpoint for reverse connection.
The endpoint Url of the reverse connect client endpoint.
Tf this is an entry in the application configuration.
Raised when a reverse connection is waiting,
finds and calls a waiting connection.
Match the waiting connection with a registration, callback registration,
return if connection is accepted in event.
true if a match was found.
Raised when a connection status changes.
Renew the cancellation token after use.
Manages a session with a server.
Manages a session with a server.
Contains the async versions of the public session api.
Obsolete warnings for service calls which should not be used when using the Session API.
Constructs a new instance of the class.
The channel used to communicate with the server.
The configuration for the client application.
The endpoint use to initialize the channel.
Constructs a new instance of the class.
The channel used to communicate with the server.
The configuration for the client application.
The endpoint used to initialize the channel.
The certificate to use for the client.
The list of available endpoints returned by server in GetEndpoints() response.
The value of profileUris used in GetEndpoints() request.
The application configuration is used to look up the certificate if none is provided.
The clientCertificate must have the private key. This will require that the certificate
be loaded from a certicate store. Converting a DER encoded blob to a X509Certificate2
will not include a private key.
The availableEndpoints and discoveryProfileUris parameters are used to validate
that the list of EndpointDescriptions returned at GetEndpoints matches the list returned at CreateSession.
Initializes a new instance of the class.
The channel.
The template session.
if set to true the event handlers are copied.
Initializes the channel.
Sets the object members to default values.
Check if all required configuration fields are populated.
Validates the server nonce and security parameters of user identity.
Closes the session and the underlying channel.
Raised when a keep alive arrives from the server or an error is detected.
Once a session is created a timer will periodically read the server state and current time.
If this read operation succeeds this event will be raised each time the keep alive period elapses.
If an error is detected (KeepAliveStopped == true) then this event will be raised as well.
Raised when a notification message arrives in a publish response.
All publish requests are managed by the Session object. When a response arrives it is
validated and passed to the appropriate Subscription object and this event is raised.
Raised when an exception occurs while processing a publish response.
Exceptions in a publish response are not necessarily fatal and the Session will
attempt to recover by issuing Republish requests if missing messages are detected.
That said, timeout errors may be a symptom of a OperationTimeout that is too short
when compared to the shortest PublishingInterval/KeepAliveCount amount the current
Subscriptions. The OperationTimeout should be twice the minimum value for
PublishingInterval*KeepAliveCount.
Raised when a subscription is added or removed
Raised to indicate the session is closing.
A session factory that was used to create the session.
Gets the endpoint used to connect to the server.
Gets the name assigned to the session.
Gets the period for wich the server will maintain the session if there is no communication from the client.
Gets the local handle assigned to the session.
Gets the user identity currently used for the session.
Gets a list of user identities that can be used to connect to the server.
Gets the table of namespace uris known to the server.
Gets the table of remote server uris known to the server.
Gets the system context for use with the session.
Gets the factory used to create encodeable objects that the server understands.
Gets the cache of the server's type tree.
Gets the cache of nodes fetched from the server.
Gets the context to use for filter operations.
Gets the locales that the server should use when returning localized text.
Gets the data type system dictionaries in use.
Gets the subscriptions owned by the session.
Gets the number of subscriptions owned by the session.
If the subscriptions are deleted when a session is closed.
Default true, set to false if subscriptions need to
be transferred or for durable subscriptions.
If the subscriptions are transferred when a session is reconnected.
Default false, set to true if subscriptions should
be transferred after reconnect. Service must be supported by server.
Gets or Sets the default subscription for the session.
Gets or Sets how frequently the server is pinged to see if communication is still working.
This interval controls how much time elaspes before a communication error is detected.
If everything is ok the KeepAlive event will be raised each time this period elapses.
Returns true if the session is not receiving keep alives.
Set to true if the server does not respond for 2 times the KeepAliveInterval.
Set to false is communication recovers.
Gets the time of the last keep alive.
Gets the number of outstanding publish or keep alive requests.
Gets the number of outstanding publish or keep alive requests which appear to be missing.
Gets the number of good outstanding publish requests.
Creates a new communication session with a server by invoking the CreateSession service
The configuration for the client application.
The endpoint for the server.
If set to true the discovery endpoint is used to update the endpoint description before connecting.
The name to assign to the session.
The timeout period for the session.
The identity.
The user identity to associate with the session.
The new session object
Creates a new communication session with a server by invoking the CreateSession service
The configuration for the client application.
The endpoint for the server.
If set to true the discovery endpoint is used to update the endpoint description before connecting.
If set to true then the domain in the certificate must match the endpoint used.
The name to assign to the session.
The timeout period for the session.
The user identity to associate with the session.
The preferred locales.
The new session object.
Creates a new session with a server using the specified channel by invoking the CreateSession service
The configuration for the client application.
The channel for the server.
The endpoint for the server.
The certificate to use for the client.
The list of available endpoints returned by server in GetEndpoints() response.
The value of profileUris used in GetEndpoints() request.
Creates a secure channel to the specified endpoint.
The application configuration.
The client endpoint for the reverse connect.
A configured endpoint to connect to.
Update configuration based on server prior connect.
Check that the certificate specifies a valid domain (computer) name.
A representing the asynchronous operation.
Creates a new communication session with a server using a reverse connection.
The configuration for the client application.
The client endpoint for the reverse connect.
The endpoint for the server.
If set to true the discovery endpoint is used to update the endpoint description before connecting.
If set to true then the domain in the certificate must match the endpoint used.
The name to assign to the session.
The timeout period for the session.
The user identity to associate with the session.
The preferred locales.
The new session object.
Creates a new communication session with a server using a reverse connect manager.
The configuration for the client application.
The reverse connect manager for the client connection.
The endpoint for the server.
If set to true the discovery endpoint is used to update the endpoint description before connecting.
If set to true then the domain in the certificate must match the endpoint used.
The name to assign to the session.
The timeout period for the session.
The user identity to associate with the session.
The preferred locales.
The cancellation token.
The new session object.
Recreates a session based on a specified template.
The Session object to use as template
The new session object.
Recreates a session based on a specified template.
The Session object to use as template
The waiting reverse connection.
The new session object.
Recreates a session based on a specified template using the provided channel.
The Session object to use as template
The waiting reverse connection.
The new session object.
Raised before a reconnect operation completes.
Reconnects to the server after a network failure.
Reconnects to the server after a network failure using a waiting connection.
Reconnects to the server after a network failure using a waiting connection.
Saves all the subscriptions of the session.
The file path.
Saves a set of subscriptions to a stream.
Saves a set of subscriptions to a file.
Load the list of subscriptions saved in a stream.
The stream.
The list of loaded subscriptions
Load the list of subscriptions saved in a file.
The file path.
The list of loaded subscriptions
Updates the local copy of the server's namespace uri and server uri tables.
Fetch the operation limits of the server.
Updates the cache with the type and its subtypes.
This method can be used to ensure the TypeTree is populated.
Updates the cache with the types and its subtypes.
This method can be used to ensure the TypeTree is populated.
Returns the available encodings for a node
The variable node.
Returns the data description for the encoding.
The encoding Id.
Returns the data dictionary that contains the description.
The description id.
Returns the data dictionary that contains the description.
The dictionary id.
The dictionary.
Loads all dictionaries of the OPC binary or Xml schema type system.
The type system.
Reads the values for the node attributes and returns a node object collection.
If the nodeclass for the nodes in nodeIdCollection is already known,
and passed as nodeClass, reads only values of required attributes.
Otherwise NodeClass.Unspecified should be used.
The nodeId collection to read.
The nodeClass of all nodes in the collection. Set to NodeClass.Unspecified if the nodeclass is unknown.
The node collection that is created from attributes read from the server.
The errors that occured reading the nodes.
Set to true if optional attributes should not be omitted.
Reads the values for the node attributes and returns a node object.
Reads the nodeclass of the nodeIds, then reads
the values for the node attributes and returns a node object collection.
The nodeId collection.
The node collection read from the server.
The errors occured reading the nodes.
Set to true if optional attributes should not be omitted.
Reads the values for the node attributes and returns a node object.
The nodeId.
Reads the values for the node attributes and returns a node object.
If the nodeclass is known, only the supported attribute values are read.
The nodeId.
The nodeclass of the node to read.
Read optional attributes.
Reads the value for a node.
The node Id.
Reads the values for a node collection. Returns diagnostic errors.
The node Id.
The data values read from the server.
The errors reported by the server.
Reads the value for a node an checks that it is the specified type.
The node id.
The expected type.
Fetches all references for the specified node.
The node id.
Fetches all references for the specified nodes.
The node id collection.
A list of reference collections.
The errors reported by the server.
Establishes a session with the server.
The name to assign to the session.
The user identity.
Establishes a session with the server.
The name to assign to the session.
The session timeout.
The user identity.
The list of preferred locales.
Establishes a session with the server.
The name to assign to the session.
The session timeout.
The user identity.
The list of preferred locales.
If set to true then the domain in the certificate must match the endpoint used.
Updates the preferred locales used for the session.
The preferred locales.
Updates the user identity and/or locales used for the session.
The user identity.
The preferred locales.
Finds the NodeIds for the components for an instance.
Reads the values for a set of variables.
The variable ids.
The expected types.
The list of returned values.
The list of returned errors.
Reads the display name for a set of Nodes.
Disconnects from the server and frees any network resources.
Close the session with the server and optionally closes the channel.
Disconnects from the server and frees any network resources with the specified timeout.
Disconnects from the server and frees any network resources with the specified timeout.
Adds a subscription to the session.
The subscription to add.
Removes a subscription from the session.
The subscription to remove.
Removes a list of subscriptions from the session.
The list of subscriptions to remove.
Removes a transferred subscription from the session.
Called by the session to which the subscription
is transferred to obtain ownership. Internal.
The subscription to remove.
Transfers a list of Subscriptions from another session.
Invokes the Browse service.
The request header.
The view to browse.
The node to browse.
The maximum number of returned values.
The browse direction.
The reference type id.
If set to true the subtypes of the ReferenceType will be included in the browse.
The node class mask.
The continuation point.
The list of node references.
Invokes the Browse service. Handles multiple nodes for browse request.
The request header.
The view to browse.
The nodes to browse.
The maximum number of returned values.
The browse direction.
The reference type id.
If set to true the subtypes of the ReferenceType will be included in the browse.
The node class mask.
The continuation points per browse.
The list of node references collections.
Begins an asynchronous invocation of the Browse service.
The request header.
The view to browse.
The node to browse.
The maximum number of returned values..
The browse direction.
The reference type id.
If set to true the subtypes of the ReferenceType will be included in the browse.
The node class mask.
The callback.
Finishes an asynchronous invocation of the Browse service.
The result.
The continuation point.
The list of node references.
Invokes the BrowseNext service.
Invokes the BrowseNext service. Handles multiple continuation points.
Begins an asynchronous invocation of the BrowseNext service.
Finishes an asynchronous invocation of the BrowseNext service.
Calls the specified method and returns the output arguments.
The NodeId of the object that provides the method.
The NodeId of the method to call.
The input arguments.
The list of output argument values.
Returns the software certificates assigned to the application.
Handles an error when validating the application instance certificate provided by the server.
Handles an error when validating software certificates provided by the server.
Inspects the software certificates provided by the server.
Starts a timer to check that the connection to the server is still available.
Removes a completed async request.
Adds a new async request.
Removes a completed async request.
Sends a keep alive by reading from the server.
Checks if a notification has arrived. Sends a publish if it has not.
Called when the server returns a keep alive response.
Called when a error occurs during a keep alive.
Prepare a list of subscriptions to delete.
Creates a read request with attributes determined by the NodeClass.
Creates a read request with attributes determined by the NodeClass.
Builds the node collection results based on the attribute values of the read response.
The collection of all attributes to read passed in the read request.
The attributes requested per NodeId
The attribute values returned by the read request.
The diagnostic info returned by the read request.
The response header of the read request.
The node collection which holds the results.
The service results for each node.
Creates a Node based on the read response.
Create a dictionary of attributes to read for a nodeclass.
Sends an additional publish request.
Completes an asynchronous publish operation.
Sends a republish request.
Processes the response from a publish request.
Recreate the subscriptions in a reconnected session.
Uses Transfer service if is set to true.
The template for the subscriptions.
Raises an event indicating that publish has returned a notification.
Invokes a DeleteSubscriptions call for the specified subscriptionId.
Load certificate for connection.
Load certificate chain for connection.
Helper to determine if a continuation point needs to be processed.
Returns true if the Bad_TooManyPublishRequests limit
has not been reached.
The actual number of publish requests.
If the publish request limit was reached.
The period for which the server will maintain the session if there is no communication from the client.
The locales that the server should use when returning localized text.
The Application Configuration.
The endpoint used to connect to the server.
The Instance Certificate.
The Instance Certificate Chain.
If set totrue then the domain in the certificate must match the endpoint used.
The name assigned to the session.
The user identity currently used for the session.
Removes a subscription from the session.
The subscription to remove.
Removes a list of subscriptions from the sessiont.
The list of subscriptions to remove.
Reads the values for the node attributes and returns a node object collection.
If the nodeclass for the nodes in nodeIdCollection is already known
and passed as nodeClass, reads only values of required attributes.
Otherwise NodeClass.Unspecified should be used.
The nodeId collection to read.
The nodeClass of all nodes in the collection. Set to NodeClass.Unspecified if the nodeclass is unknown.
Set to true if optional attributes should not be omitted.
The cancellation token.
The node collection and associated errors.
Reads the values for the node attributes and returns a node object collection.
Reads the nodeclass of the nodeIds, then reads
the values for the node attributes and returns a node collection.
The nodeId collection.
If optional attributes to read.
The cancellation token.
Reads the values for the node attributes and returns a node object.
The nodeId.
The cancellation token for the request.
Reads the values for the node attributes and returns a node object.
If the nodeclass is known, only the supported attribute values are read.
The nodeId.
The nodeclass of the node to read.
Read optional attributes.
The cancellation token for the request.
Reads the value for a node.
The node Id.
The cancellation token for the request.
Reads the values for a node collection. Returns diagnostic errors.
The node Id.
The cancellation token for the request.
Disconnects from the server and frees any network resources.
Close the session with the server and optionally closes the channel.
The cancellation token.
Disconnects from the server and frees any network resources with the specified timeout.
Disconnects from the server and frees any network resources with the specified timeout.
The event arguments provided when a keep alive response arrives.
Creates a new instance.
Gets the status associated with the keep alive operation.
Gets the current server state.
Gets the current server time.
Gets or sets a flag indicating whether the session should send another keep alive.
Represents the event arguments provided when a new notification message arrives.
Creates a new instance.
Gets the subscription that the notification applies to.
Gets the notification message.
Gets the string table returned with the notification message.
Represents the event arguments provided when a publish error occurs.
Creates a new instance.
Creates a new instance.
Gets the status associated with the keep alive operation.
Gets the subscription with the message that could not be republished.
Gets the sequence number for the message that could not be republished.
Attempts to reconnect to the server.
Create a reconnect handler.
Set to true to allow reconnect abort if keep alive recovered.
Frees any unmanaged resources.
An overrideable version of the Dispose.
Gets the session managed by the handler.
The session.
Begins the reconnect process.
Begins the reconnect process using a reverse connection.
Called when the reconnect timer expires.
Reconnects to the server.
A subscription.
The async interface for a subscription.
Creates a empty object.
Initializes the subscription from a template.
Initializes the subscription from a template.
The template.
if set to true the event handlers are copied.
Called by the .NET framework during deserialization.
Sets the private members to default values.
Frees any unmanaged resources.
An overrideable version of the Dispose.
Raised to indicate that the state of the subscription has changed.
Raised to indicate the publishing state for the subscription has stopped or resumed (see PublishingStopped property).
A display name for the subscription.
The publishing interval.
The keep alive count.
The life time of of the subscription in counts of
publish interval.
LifetimeCount shall be at least 3*KeepAliveCount.
The maximum number of notifications per publish request.
Whether publishing is enabled.
The priority assigned to subscription.
The timestamps to return with the notification messages.
The maximum number of messages to keep in the internal cache.
The default monitored item.
The minimum lifetime for subscriptions in milliseconds.
Gets or sets a value indicating whether the notifications are cached within the monitored items.
true if monitored item cache is disabled; otherwise, false.
Applications must process the Session.Notication event if this is set to true.
This flag improves performance by eliminating the processing involved in updating the cache.
Gets or sets the behavior of waiting for sequential order in handling incoming messages.
true if incoming messages are handled sequentially; false otherwise.
Setting to true means incoming messages are processed in
a "single-threaded" manner and callbacks will not be invoked in parallel.
If the available sequence numbers of a subscription
are republished or acknoledged after a transfer.
Default false, set to true if no data loss is important
and available publish requests (sequence numbers) that were never acknoledged should be
recovered with a republish. The setting is used after a subscription transfer.
The unique identifier assigned by the server which can be used to transfer a session.
Gets or sets the fast data change callback.
The fast data change callback.
Only one callback is allowed at a time but it is more efficient to call than an event.
Gets or sets the fast event callback.
The fast event callback.
Only one callback is allowed at a time but it is more efficient to call than an event.
The items to monitor.
Allows the list of monitored items to be saved/restored when the object is serialized.
Returns true if the subscription has changes that need to be applied.
Returns the number of monitored items.
The session that owns the subscription item.
A local handle assigned to the subscription
The unique identifier assigned by the server.
Whether the subscription has been created on the server.
The current publishing interval.
The current keep alive count.
The current lifetime count.
Whether publishing is currently enabled.
The priority assigned to subscription when it was created.
The when that the last notification received was published.
The when that the last notification was received.
The sequence number assigned to the last notification message.
The number of notifications contained in the last notification message.
The last notification received from the server.
The cached notifications.
The sequence numbers that are available for republish requests.
Sends a notification that the state of the subscription has changed.
Returns true if the subscription is not receiving publishes.
Creates a subscription on the server and adds all monitored items.
Called after the subscription was transferred.
The session to which the subscription is transferred.
Id of the transferred subscription.
The available sequence numbers on the server.
Deletes a subscription on the server.
Modifies a subscription on the server.
Changes the publishing enabled state for the subscription.
Republishes the specified notification message.
Applies any changes to the subscription items.
Resolves all relative paths to nodes on the server.
Creates all items that have not already been created.
Modies all items that have been changed.
Deletes all items that have been marked for deletion.
Set monitoring mode of items.
Adds the notification message to internal cache.
Get the number of outstanding message workers
Adds an item to the subscription.
Adds an item to the subscription.
Removes an item from the subscription.
Removes an item from the subscription.
Returns the monitored item identified by the client handle.
Tells the server to refresh all conditions being monitored by the subscription.
Updates the available sequence numbers and queues after transfer.
If is set to true, sequence numbers
are queued for republish, otherwise ack may be sent.
The list of available sequence numbers on the server.
Call the GetMonitoredItems method on the server.
Starts a timer to ensure publish requests are sent frequently enough to detect network interruptions.
Checks if a notification has arrived. Sends a publish if it has not.
Dumps the current state of the session queue.
Update the subscription with the given revised settings.
Update the subscription with the given revised settings.
Update the subscription with the given revised settings.
Delete the subscription.
Ignore errors, always reset all parameter.
Ensures sensible values for the counts.
Processes the incoming messages.
Throws an exception if the subscription is not in the correct state.
Update the results to monitored items
after updating the monitoring mode.
Prepare the creation requests for all monitored items that have not yet been created.
Prepare the modify requests for all monitored items
that need modification.
Transfer all monitored items and prepares the modify
requests if transfer of client handles is not possible.
Prepare the ResolveItem to NodeId service call.
Saves a data change in the monitored item cache.
Saves events in the monitored item cache.
Manages the semaphore used to limit message workers for handling incoming messages
Find or create an entry for the incoming sequence number.
The current Utc time.
The sequence number for the new entry.
A message received from the server cached until is processed or discarded.
Creates a subscription on the server and adds all monitored items.
Deletes a subscription on the server.
Modifies a subscription on the server.
Changes the publishing enabled state for the subscription.
Republishes the specified notification message.
Applies any changes to the subscription items.
Resolves all relative paths to nodes on the server.
Creates all items on the server that have not already been created.
Modies all items that have been changed.
Deletes all items that have been marked for deletion.
Set monitoring mode of items.
Tells the server to refresh all conditions being monitored by the subscription.
Flags indicating what has changed in a subscription.
The subscription has not changed.
The subscription was created on the server.
The subscription was deleted on the server.
The subscription was modified on the server.
Monitored items were added to the subscription (but not created on the server)
Monitored items were removed to the subscription (but not deleted on the server)
Monitored items were created on the server.
Monitored items were deleted on the server.
Monitored items were modified on the server.
Subscriptions was transferred on the server.
The delegate used to receive data change notifications via a direct function call instead of a .NET Event.
The delegate used to receive event notifications via a direct function call instead of a .NET Event.
The event arguments provided when the state of a subscription changes.
Creates a new instance.
The changes that have affected the subscription.
The delegate used to receive subscription state change notifications.
A collection of subscriptions.
Initializes an empty collection.
Initializes the collection from another collection.
The existing collection to use as the basis of creating this collection
Initializes the collection with the specified capacity.
The max. capacity of the collection
The client side interface with support for batching according to operation limits.
Intializes the object with a channel and default operation limits.
The operation limits are used to batch the service requests.
Initialize the collections for a service call.
Preset the result collections with null if the operation limit
is sufficient or with the final size if batching is necessary.
Add the result of a batched service call to the results.
Assigns the batched collection result to the result if the result
collection is not initialized, adds the range to the result
collections otherwise.
Extension helpers for client service calls.
Returns batches of a collection for processing.
Returns the original collection if batchsize is 0 or the collection count is smaller than the batch size.
The type of the items in the collection.
The type of the items in the collection.
The collection from which items are batched.
The size of a batch.
The collection.