QuickOPC User's Guide and Reference
SubscribeEvent(IEasyUAClient,UAEndpointDescriptor,UANodeDescriptor,Int32,UAEventFilter,Boolean,EasyUAEventNotificationEventHandler,Object) Method



OpcLabs.EasyOpcUA Assembly > OpcLabs.EasyOpc.UA Namespace > IEasyUAClientExtension Class > SubscribeEvent Method : SubscribeEvent(IEasyUAClient,UAEndpointDescriptor,UANodeDescriptor,Int32,UAEventFilter,Boolean,EasyUAEventNotificationEventHandler,Object) Method
The client object that will perform the operation.
Endpoint descriptor. Identifies the OPC-UA server.
Node descriptor. Identifies the node in OPC server's address space.
The sampling interval (in milliseconds) indicates the fastest rate at which the Server should sample its underlying source for events.
The event filter.
When set, a ConditionRefresh will be automatically performed when needed to keep the condition information up-to-date.
A callback method to be invoked for each significant monitored item change.
User-defined state object.
Subscribe to an event. Specify an endpoint descriptor, node id, sampling interval, event filter (Select and Where clauses), auto condition refresh flag, callback method, and a state object.
Syntax
'Declaration
 
<ExtensionAttribute()>
Public Overloads Shared Function SubscribeEvent( _
   ByVal client As IEasyUAClient, _
   ByVal endpointDescriptor As UAEndpointDescriptor, _
   ByVal nodeDescriptor As UANodeDescriptor, _
   ByVal samplingInterval As Integer, _
   ByVal eventFilter As UAEventFilter, _
   ByVal autoConditionRefresh As Boolean, _
   ByVal eventCallback As EasyUAEventNotificationEventHandler, _
   ByVal state As Object _
) As Integer
'Usage
 
Dim client As IEasyUAClient
Dim endpointDescriptor As UAEndpointDescriptor
Dim nodeDescriptor As UANodeDescriptor
Dim samplingInterval As Integer
Dim eventFilter As UAEventFilter
Dim autoConditionRefresh As Boolean
Dim eventCallback As EasyUAEventNotificationEventHandler
Dim state As Object
Dim value As Integer
 
value = IEasyUAClientExtension.SubscribeEvent(client, endpointDescriptor, nodeDescriptor, samplingInterval, eventFilter, autoConditionRefresh, eventCallback, state)

Parameters

client
The client object that will perform the operation.
endpointDescriptor
Endpoint descriptor. Identifies the OPC-UA server.
nodeDescriptor
Node descriptor. Identifies the node in OPC server's address space.
samplingInterval
The sampling interval (in milliseconds) indicates the fastest rate at which the Server should sample its underlying source for events.
eventFilter
The event filter.
autoConditionRefresh
When set, a ConditionRefresh will be automatically performed when needed to keep the condition information up-to-date.
eventCallback
A callback method to be invoked for each significant monitored item change.
state
User-defined state object.

Return Value

The method returns an integer handle that uniquely identifies the monitored item subscription.
Exceptions
ExceptionDescription

A null reference (Nothing in Visual Basic) is passed to a method that does not accept it as a valid argument.

This is a usage error, i.e. it will never occur (the exception will not be thrown) in a correctly written program. Your code should not catch this exception.

The value of an argument is outside the allowable range of values as defined by the invoked method.

This is a usage error, i.e. it will never occur (the exception will not be thrown) in a correctly written program. Your code should not catch this exception.

Remarks

If eventCallback is a null reference, only the IEasyUAClient.EventNotification event is generated, and no callback method is invoked.

You can obtain nodeDescriptor e.g. by calling one of the browsing methods on EasyUAClientCore object.

You can use UAEventFilterBuilder class, or an implicit conversion of Select clauses from UAAttributeFieldCollection, to simplify creation of eventFilter.

Requirements

Target Platforms: .NET Framework: Windows 10 (selected versions), Windows 11 (selected versions), Windows Server 2016, Windows Server 2022; .NET: Linux, macOS, Microsoft Windows

See Also