![](dotnetdiagramimages/OpcLabs_EasyOpcUAComponents_OpcLabs_EasyOpc_UA_PubSub_InformationModel_EasyUAPublishSubscribeClient.png)
'Declaration
<CLSCompliantAttribute(True)> <ComDefaultInterfaceAttribute(OpcLabs.EasyOpc.UA.PubSub.InformationModel.ComTypes._EasyUAPublishSubscribeClient)> <ComVisibleAttribute(True)> <GuidAttribute("0CBFF3B4-A000-445F-A931-9AFAA496A234")> <TypeConverterAttribute(System.ComponentModel.ExpandableObjectConverter)> <DesignerCategoryAttribute("Component")> <SerializableAttribute()> Public NotInheritable Class EasyUAPublishSubscribeClient Inherits EasyUAPublishSubscribeClientCore Implements OpcLabs.BaseLib.Arrangement.IQueryTraits, OpcLabs.BaseLib.IValueEquatable, OpcLabs.BaseLib.Licensing.ILicensingContextHolder, OpcLabs.BaseLib.Widgets.ComTypes._Widget, OpcLabs.BaseLib.Widgets.IWidget, OpcLabs.EasyOpc.UA.ComTypes._EasyUASpecializedClient, OpcLabs.EasyOpc.UA.IEasyUASpecializedClient, OpcLabs.EasyOpc.UA.PubSub.InformationModel.ComTypes._EasyUAPublishSubscribeClient, IEasyUAPublishSubscribeClient, System.ComponentModel.IComponent, System.ICloneable, System.IDisposable, System.IServiceProvider, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
'Usage
Dim instance As EasyUAPublishSubscribeClient
[CLSCompliant(true)] [ComDefaultInterface(OpcLabs.EasyOpc.UA.PubSub.InformationModel.ComTypes._EasyUAPublishSubscribeClient)] [ComVisible(true)] [Guid("0CBFF3B4-A000-445F-A931-9AFAA496A234")] [TypeConverter(System.ComponentModel.ExpandableObjectConverter)] [DesignerCategory("Component")] [Serializable()] public sealed class EasyUAPublishSubscribeClient : EasyUAPublishSubscribeClientCore, OpcLabs.BaseLib.Arrangement.IQueryTraits, OpcLabs.BaseLib.IValueEquatable, OpcLabs.BaseLib.Licensing.ILicensingContextHolder, OpcLabs.BaseLib.Widgets.ComTypes._Widget, OpcLabs.BaseLib.Widgets.IWidget, OpcLabs.EasyOpc.UA.ComTypes._EasyUASpecializedClient, OpcLabs.EasyOpc.UA.IEasyUASpecializedClient, OpcLabs.EasyOpc.UA.PubSub.InformationModel.ComTypes._EasyUAPublishSubscribeClient, IEasyUAPublishSubscribeClient, System.ComponentModel.IComponent, System.ICloneable, System.IDisposable, System.IServiceProvider, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
[CLSCompliant(true)] [ComDefaultInterface(OpcLabs.EasyOpc.UA.PubSub.InformationModel.ComTypes._EasyUAPublishSubscribeClient)] [ComVisible(true)] [Guid("0CBFF3B4-A000-445F-A931-9AFAA496A234")] [TypeConverter(System.ComponentModel.ExpandableObjectConverter)] [DesignerCategory("Component")] [Serializable()] public ref class EasyUAPublishSubscribeClient sealed : public EasyUAPublishSubscribeClientCore, OpcLabs.BaseLib.Arrangement.IQueryTraits, OpcLabs.BaseLib.IValueEquatable, OpcLabs.BaseLib.Licensing.ILicensingContextHolder, OpcLabs.BaseLib.Widgets.ComTypes._Widget, OpcLabs.BaseLib.Widgets.IWidget, OpcLabs.EasyOpc.UA.ComTypes._EasyUASpecializedClient, OpcLabs.EasyOpc.UA.IEasyUASpecializedClient, OpcLabs.EasyOpc.UA.PubSub.InformationModel.ComTypes._EasyUAPublishSubscribeClient, IEasyUAPublishSubscribeClient, System.ComponentModel.IComponent, System.ICloneable, System.IDisposable, System.IServiceProvider, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
This class does *not* have OPC UA Subscriber functionality; if you need that, see OpcLabs.EasyOpc.UA.PubSub.EasyUASubscriber.
// This example obtains and prints out information about all published datasets in the OPC UA PubSub configuration. // // Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . // OPC client and subscriber examples in C# on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-CSharp . // Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own // a commercial license in order to use Online Forums, and we reply to every post. using System; using OpcLabs.BaseLib.Collections.Specialized; using OpcLabs.EasyOpc.UA.OperationModel; using OpcLabs.EasyOpc.UA.PubSub.Configuration; using OpcLabs.EasyOpc.UA.PubSub.Configuration.Extensions; using OpcLabs.EasyOpc.UA.PubSub.InformationModel; using OpcLabs.EasyOpc.UA.PubSub.InformationModel.Extensions; namespace UASubscriberDocExamples.PubSub._IUAReadOnlyPubSubConfiguration { partial class GetMethods { public static void PublishedDataSets() { // Instantiate the publish-subscribe client object. var publishSubscribeClient = new EasyUAPublishSubscribeClient(); try { Console.WriteLine("Loading the configuration..."); // Load the PubSub configuration from a file. The file itself is at the root of the project, and we have // specified that it has to be copied to the project's output directory. IUAReadOnlyPubSubConfiguration pubSubConfiguration = publishSubscribeClient.LoadReadOnlyConfiguration("UADemoPublisher-Default.uabinary"); // Alternatively, using the statement below, you can access a live configuration residing in an OPC UA // Server with appropriate information model. //IUAReadOnlyPubSubConfiguration pubSubConfiguration = // publishSubscribeClient.AccessReadOnlyConfiguration("opc.tcp://localhost:48010"); // Get the names of all published datasets in the PubSub configuration. StringCollection publishedDataSetNames = pubSubConfiguration.ListAllPublishedDataSetNames(); foreach (string publishedDataSetName in publishedDataSetNames) { Console.WriteLine($"Published dataset: {publishedDataSetName}"); // You can use the statement below to obtain parameters of the published dataset. //UAPublishedDataSetElement publishedDataSetElement = // pubSubConfiguration.GetPublishedDataSetElement(publishedDataSetName); } } catch (UAException uaException) { Console.WriteLine($"*** Failure: {uaException.InnerException.Message}"); } Console.WriteLine("Finished."); } // Example output: // //Loading the configuration... //Published dataset: Simple //Published dataset: AllTypes //Published dataset: MassTest //Published dataset: AllTypes-Dynamic //Finished. } }
' This example obtains and prints out information about all published datasets in the OPC UA PubSub configuration. ' ' Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . ' OPC client and subscriber examples in VB.NET on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-VBNET . ' Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own ' a commercial license in order to use Online Forums, and we reply to every post. Imports OpcLabs.EasyOpc.UA.OperationModel Imports OpcLabs.EasyOpc.UA.PubSub.Configuration Imports OpcLabs.EasyOpc.UA.PubSub.Configuration.Extensions Imports OpcLabs.EasyOpc.UA.PubSub.InformationModel Imports OpcLabs.EasyOpc.UA.PubSub.InformationModel.Extensions Namespace PubSub._IUAReadOnlyPubSubConfiguration Partial Friend Class GetMethods Public Shared Sub PublishedDataSets() ' Instantiate the publish-subscribe client object. Dim publishSubscribeClient = New EasyUAPublishSubscribeClient() Try Console.WriteLine("Loading the configuration...") ' Load the PubSub configuration from a file. The file itself is at the root of the project, and we have ' specified that it has to be copied to the project's output directory. Dim pubSubConfiguration As IUAReadOnlyPubSubConfiguration = publishSubscribeClient.LoadReadOnlyConfiguration("UADemoPublisher-Default.uabinary") ' Alternatively, using the statement below, you can access a live configuration residing in an OPC UA ' Server with appropriate information model. 'Dim pubSubConfiguration As IUAReadOnlyPubSubConfiguration = ' publishSubscribeClient.AccessReadOnlyConfiguration("opc.tcp://localhost:48010") ' Get the names of all published datasets in the PubSub configuration. Dim publishedDataSetNames = pubSubConfiguration.ListAllPublishedDataSetNames() For Each publishedDataSetName As String In publishedDataSetNames Console.WriteLine($"Published dataset: {publishedDataSetName}") ' You can use the statement below to obtain parameters of the published dataset. 'Dim publishedDataSetElement As UAPublishedDataSetElement = ' pubSubConfiguration.GetPublishedDataSetElement(publishedDataSetName) Next publishedDataSetName Catch uaException As UAException Console.WriteLine($"*** Failure: {uaException.InnerException.Message}") End Try Console.WriteLine("Finished...") End Sub End Class ' Example output ' 'Loading the configuration... 'Published dataset Simple 'Published dataset: AllTypes 'Published dataset: MassTest 'Published dataset: AllTypes-Dynamic 'Finished. End Namespace
// This example obtains and prints out information about all published datasets in the OPC UA PubSub configuration. // // Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . // OPC client and subscriber examples in Object Pascal (Delphi) on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-OP . // Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own // a commercial license in order to use Online Forums, and we reply to every post. class procedure GetMethods.PublishedDataSets; var //EndpointDescriptor: _UAEndpointDescriptor; I: Integer; PublishedDataSetName: string; PublishedDataSetNames: _StringCollection; //PublishedDataSetElement: _UAPublishedDataSetElement; PublishSubscribeClient: _EasyUAPublishSubscribeClient; PubSubConfiguration: _UAReadOnlyPubSubConfiguration; begin // Instantiate the publish-subscribe client object. PublishSubscribeClient := CoEasyUAPublishSubscribeClient.Create; try WriteLn('Loading the configuration...'); // Load the PubSub configuration from a file. The file itself is included alongside the script. PubSubConfiguration := PublishSubscribeClient.LoadReadOnlyConfiguration('UADemoPublisher-Default.uabinary'); // Alternatively, using the statements below, you can access a live configuration residing in an OPC UA Server // with appropriate information model. //EndpointDescriptor := CoUAEndpointDescriptor.Create; //EndpointDescriptor.UrlString := 'opc.tcp://localhost:48010'; //PubSubConfiguration := PublishSubscribeClient.AccessReadOnlyConfiguration(EndpointDescriptor); // Get the names of PubSub connections in the configuration, regardless of the folder they reside in. PublishedDataSetNames := PubSubConfiguration.ListAllPublishedDataSetNames; for I := 0 to PublishedDataSetNames.Count-1 do begin PublishedDataSetName := PublishedDataSetNames[I]; WriteLn('Published dataset: ', PublishedDataSetName); // You can use the statement below to obtain parameters of the published dataset. //PublishedDataSetElement := PubSubConfiguration.GetPublishedDataSetElement(Unassigned, PublishedDataSetName); end; except on E: EOleException do begin WriteLn(Format('*** Failure: %s', [E.GetBaseException.Message])); end; end; WriteLn('Finished.'); end; // Example output: // //Loading the configuration... //Published dataset: Simple //Published dataset: AllTypes //Published dataset: MassTest //Published dataset: AllTypes-Dynamic //Finished.
Rem This example obtains and prints out information about all published datasets in the OPC UA PubSub configuration. Rem Rem Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . Rem OPC client and subscriber examples in VBScript on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-VBScript . Rem Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own Rem a commercial license in order to use Online Forums, and we reply to every post. Option Explicit ' Instantiate the publish-subscribe client object. Dim PublishSubscribeClient: Set PublishSubscribeClient = CreateObject("OpcLabs.EasyOpc.UA.PubSub.InformationModel.EasyUAPublishSubscribeClient") On Error Resume Next DumpPublishedDataSets If Err.Number <> 0 Then WScript.Echo "*** Failure: " & Err.Source & ": " & Err.Description WScript.Quit End If On Error Goto 0 WScript.Echo "Finished." Sub DumpPublishedDataSets() WScript.Echo "Loading the configuration..." ' Load the PubSub configuration from a file. The file itself is included alongside the script. Dim PubSubConfiguration: Set PubSubConfiguration = PublishSubscribeClient.LoadReadOnlyConfiguration("UADemoPublisher-Default.uabinary") ' Alternatively, using the statements below, you can access a live configuration residing in an OPC UA Server ' with appropriate information model. 'Dim EndpointDescriptor: Set EndpointDescriptor = CreateObject("OpcLabs.EasyOpc.UA.UAEndpointDescriptor") 'EndpointDescriptor.UrlString = "opc.tcp://localhost:48010" 'Dim PubSubConfiguration: Set PubSubConfiguration = PublishSubscribeClient.AccessReadOnlyConfiguration(EndpointDescriptor) ' Get the names of PubSub connections in the configuration, regardless of the folder they reside in. Dim PublishedDataSetNames: Set PublishedDataSetNames = PubSubConfiguration.ListAllPublishedDataSetNames Dim publishedDataSetName: For Each publishedDataSetName In PublishedDataSetNames WScript.Echo "Published dataset: " & publishedDataSetName ' You can use the statement below to obtain parameters of the published dataset. 'Dim PublishedDataSetElement: Set PublishedDataSetElement = PubSubConfiguration.GetPublishedDataSetElement(Nothing, publishedDataSetName) Next End Sub ' Example output: ' 'Loading the configuration... 'Published dataset: Simple 'Published dataset: AllTypes 'Published dataset: MassTest 'Published dataset: AllTypes-Dynamic 'Finished.
# This example obtains and prints out information about all published datasets in the OPC UA PubSub configuration. # # Find all latest examples here: https://opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Latest/examples.html . # OPC client and subscriber examples in Python on GitHub: https://github.com/OPCLabs/Examples-QuickOPC-Python . # Missing some example? Ask us for it on our Online Forums, https://www.opclabs.com/forum/index ! You do not have to own # a commercial license in order to use Online Forums, and we reply to every post. # The QuickOPC package is needed. Install it using "pip install opclabs_quickopc". import opclabs_quickopc # Import .NET namespaces. from OpcLabs.BaseLib import * #from OpcLabs.EasyOpc.UA import * from OpcLabs.EasyOpc.UA.OperationModel import * from OpcLabs.EasyOpc.UA.PubSub.Configuration.Extensions import * from OpcLabs.EasyOpc.UA.PubSub.InformationModel import * from OpcLabs.EasyOpc.UA.PubSub.InformationModel.Extensions import * from OpcLabs.EasyOpc.UA.PubSub.OperationModel import * # Instantiate the publish-subscribe client object. publishSubscribeClient = EasyUAPublishSubscribeClient() try: print('Loading the configuration...') # Load the PubSub configuration from a file. The file itself is in this script's directory. pubSubConfiguration = IEasyUAPublishSubscribeClientExtension.LoadReadOnlyConfiguration(publishSubscribeClient, 'UADemoPublisher-Default.uabinary') # Alternatively, using the statement below, you can access a live configuration residing in an OPC UA # Server with appropriate information model. #pubSubConfiguration = publishSubscribeClient.AccessReadOnlyConfiguration( # UAEndpointDescriptor('opc.tcp://localhost:48010')) # Get the names of all published datasets in the PubSub configuration. publishedDataSetNames = IUAReadOnlyPubSubConfigurationExtension.ListAllPublishedDataSetNames(pubSubConfiguration) for publishedDataSetName in publishedDataSetNames: print('Published dataset: ', publishedDataSetName, sep='') # You can use the statement below to obtain parameters of the published dataset. #publishedDataSetElement = IUAReadOnlyPubSubConfigurationExtension.GetPublishedDataSetElement( # pubSubConfiguration, # publishedDataSetName) except UAException as uaException: print('*** Failure: ' + uaException.GetBaseException().Message) exit() print('Finished.')
System.Object
System.MarshalByRefObject
System.ComponentModel.Component
OpcLabs.BaseLib.Widgets.Widget
OpcLabs.EasyOpc.UA.EasyUASpecializedClient
OpcLabs.EasyOpc.UA.PubSub.InformationModel.EasyUAPublishSubscribeClientCore
OpcLabs.EasyOpc.UA.PubSub.InformationModel.EasyUAPublishSubscribeClient