iot-edge-opc-publisher-v1/opcpublisher/publishednodes.json

74 строки
4.8 KiB
JSON

// ------------------------------------------------------------
// 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://<your_opcua_server>:<your_opcua_server_port>/<your_opcua_server_path>",
// allows to access the endpoint with SecurityPolicy.None when set to 'false' (no signing and encryption applied to the OPC UA communication), default is true
"UseSecurity": true,
"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
"OpcSamplingInterval": 2000,
// specifies the publishing interval OPC Publisher requests the server to publish the node value, it will only be published if the value has changed
"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.
"HeartbeatInterval": 3600,
// specifies that the first event will not generate a telemetry event, this is useful when publishing a large amount of data to prevent a event flood at startup of OPC Publisher
"SkipFirst": true
}
]
},
//
// For completeness you will find the documentation of legacy formats below.
//
{
// example for an EnpointUrl is: opc.tcp://win10iot:51210/UA/SampleServer
"EndpointUrl": "opc.tcp://<your_opcua_server>:<your_opcua_server_port>/<your_opcua_server_path>",
// Allows to access the endpoint with SecurityPolicy.None when set to 'false' (no signing and encryption applied to the OPC UA communication), default is true
"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
}
]
},
// the format below (NodeId format) is only supported for backward compatibility. you need to ensure that the
// OPC UA server on the configured EndpointUrl has the namespaceindex you expect with your configuration.
// please use the ExpandedNodeId format as in the examples above instead.
{
"EndpointUrl": "opc.tcp://<your_opcua_server>:<your_opcua_server_port>/<your_opcua_server_path>",
"NodeId": {
"Identifier": "ns=0;i=2258"
}
}
// please consult the OPC UA specification for details on how OPC monitored node sampling interval and OPC subscription publishing interval settings are handled by the OPC UA stack.
// the publishing interval of the data to Azure IoTHub is controlled by the command line settings (or the default: publish data to IoTHub at least each 1 second).
]