// ------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License (MIT). See License.txt in the repo root for license information. // ------------------------------------------------------------ [ { // Example for an EnpointUrl is: opc.tcp://192.168.178.26:62541/Quickstarts/ReferenceServer "EndpointUrl": "opc.tcp://:/", // Allows to access the endpoint with SecurityPolicy.None when set to false (no signing and encryption applied to the OPC UA communication), default is false. "UseSecurity": false, "OpcNodes": [ { // Identifies the OPC node to publish in either NodeId format (contains "ns=") or ExpandedNodeId format (contains "nsu=") "Id": "i=2258", // Specifies the sampling interval OPC Publisher requests the server to sample the node value. // Value expressed in milliseconds. "OpcSamplingInterval": 1000, // Specifies the publishing interval OPC Publisher requests the server to publish the node value, it will only be published if the value has changed. // Value expressed in milliseconds. "OpcPublishingInterval": 5000, // Specifies that there should be a heartbeat generated by OPC Publisher, this means that after the given interval the last message will be sent again with an updated SourceTimestamp value. // Value expressed in seconds. "HeartbeatInterval": 3600 } ] }, { // Example for an EnpointUrl is: opc.tcp://192.168.178.26:62541/Quickstarts/ReferenceServer "EndpointUrl": "opc.tcp://:/", // The data set writer group collecting datasets defined for a certain endpoint. "DataSetWriterGroup": "Asset0", // The unique identifier for a data set writer used to collect OPC UA nodes to be semantically grouped and published with the same publishing interval. "DataSetWriterId": "DataFlow0", // Controls whether to use a secure OPC UA mode to establish a session to the OPC UA server endpoint. "UseSecurity": true, // Enum to specify the session authentication. Options: "Anonymous", "UsernamePassword" "OpcAuthenticationMode": "UsernamePassword", // The username for the session authentication. Mandatory if OpcAuthentication mode is "UsernamePassword". "OpcAuthenticationUsername": "username", // The password for the session authentication. Mandatory if OpcAuthentication mode is "UsernamePassword". "OpcAuthenticationPassword": "password", // The DataSet collection grouping the nodes to be published for the specific DataSetWriter defined above. "OpcNodes": [ { // Identifies the OPC node to publish using string based addressing e.g. for Siemens S7 "TCP".PLC_1.Motor_Simulation.M1.Motor_Drehzahl "Id": "ns=2;s=Siemens S7 \"TCP\".PLC_1.Motor_Simulation.M1.Motor_Drehzahl", // Specifies the sampling interval OPC Publisher requests the server to sample the node value. // Value expressed in Timespan string({d.hh:mm:dd.fff}). "OpcSamplingIntervalTimespan": "00:00:02", // Specifies the publishing interval OPC Publisher requests the server to publish the node value, it will only be published if the value has changed. // Value expressed in Timespan string({d.hh:mm:dd.fff}). "OpcPublishingIntervalTimespan": "00:00:05", // Specifies that there should be a heartbeat generated by OPC Publisher, this means that after the given interval the last message will be sent again with an updated SourceTimestamp value. // Value expressed in Timespan string({d.hh:mm:dd.fff}). "HeartbeatIntervalTimespan": "00:01:00", // The desired QueueSize for the monitored item to be published. "QueueSize": 10 } ] }, { // example for an EnpointUrl is: opc.tcp://192.168.178.26:62541/Quickstarts/ReferenceServer "EndpointUrl": "opc.tcp://:/", // The data set writer group collecting datasets defined for a certain endpoint. "DataSetWriterGroup": "Asset0", // The unique identifier for a data set writer used to collect OPC UA nodes to be semantically grouped and published with the same publishing interval. "DataSetWriterId": "DataFlow1", // Controls whether to use a secure OPC UA mode to establish a session to the OPC UA server endpoint. "UseSecurity": false, // Enum to specify the session authentication. Options: "Anonymous", "UsernamePassword" "OpcAuthenticationMode": "Anonymous", // The publishing interval used for a grouped set of nodes under a certain DataSetWriter. // Value expressed as a Timespan string ({d.hh:mm:dd.fff}). "DataSetPublishingIntervalTimespan": "00:00:05", // The DataSet collection grouping the nodes to be published for the specific DataSetWriter defined above. "OpcNodes": [ { // Identifies the OPC node to publish in either NodeId format (contains "ns=") or ExpandedNodeId format (contains "nsu=") "Id": "nsu=http://microsoft.com/Opc/OpcPlc/;s=StepUp", // A user defined tag to be added to the telemetry message when publisher runs in Samples message mode. "DisplayName":"StepUp" } ] }, { // Example for an EnpointUrl is: opc.tcp://win10iot:51210/UA/SampleServer "EndpointUrl": "opc.tcp://:/", // Allows to access the endpoint with SecurityPolicy.None when set to 'false' (no signing and encryption applied to the OPC UA communication), default is false. "UseSecurity": true, "OpcNodes": [ // Publisher will request the server at EndpointUrl to sample the node with the OPC sampling interval specified on command line (or the default value: OPC publishing interval) // and the subscription will publish the node value with the OPC publishing interval specified on command line (or the default value: server revised publishing interval). { // The identifier specifies the NamespaceUri and the node identifier in XML notation as specified in Part 6 of the OPC UA specification in the XML Mapping section. "ExpandedNodeId": "nsu=http://opcfoundation.org/UA/;i=2258" }, // Publisher will request the server at EndpointUrl to sample the node with the OPC sampling interval specified on command line (or the default value: OPC publishing interval) // and the subscription will publish the node value with an OPC publishing interval of 4 seconds. // Publisher will use for each dinstinct publishing interval (of nodes on the same EndpointUrl) a separate subscription. All nodes without a publishing interval setting, // will be on the same subscription and the OPC UA stack will publish with the lowest sampling interval of a node. { "ExpandedNodeId": "nsu=http://opcfoundation.org/UA/;i=2258", "OpcPublishingInterval": 4000 }, // Publisher will request the server at EndpointUrl to sample the node with the given sampling interval of 1 second // and the subscription will publish the node value with the OPC publishing interval specified on command line (or the default value: server revised interval). // If the OPC publishing interval is set to a lower value, Publisher will adjust the OPC publishing interval of the subscription to the OPC sampling interval value. { "ExpandedNodeId": "nsu=http://opcfoundation.org/UA/;i=2258", // the OPC sampling interval to use for this node. "OpcSamplingInterval": 1000 } ] } ]