The PubSubKeyPushTargetFolderType is formally defined Table 199.

Table 199 – PubSubKeyPushTargetFolderType definition

Attribute

Value

BrowseName

PubSubKeyPushTargetFolderType

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of FolderType defined in OPC 10000-5.

Organizes

Object

<PushTargetFolderName>

PubSubKeyPushTargetFolderType

OptionalPlaceholder

HasComponent

Object

<PushTargetName>

PubSubKeyPushTargetType

OptionalPlaceholder

HasComponent

Method

AddPushTarget

Defined in 8.7.2

Mandatory

HasComponent

Method

RemovePushTarget

Defined in 8.7.3

Mandatory

HasComponent

Method

AddPushTargetFolder

Defined in 8.7.4.

Optional

HasComponent

Method

RemovePushTargetFolder

Defined in 8.7.5.

Optional

Conformance Units

PubSub Model SKS Push

Instances of the PubSubKeyPushTargetFolderType can contain PubSubKeyPushTarget Objects or other instances of the PubSubKeyPushTargetFolderType. This can be used to build a tree of folder Objects used to organize the configured PubSubKeyPushTargets.

The PubSubKeyPushTarget Objects are added as components to the instance of the PubSubKeyPushTargetFolderType. A PubSubKeyPushTargets is referenced only from one folder. If the folder is deleted, all referenced PubSubKeyPushTargets are deleted with the folder.

This Method is used to add a PubSubKeyPushTarget to a PubSubKeyPushTargetFolder or to return an existing Object if the parameters match the configuration of an existing Object.

The Client shall be authorized to modify the configuration for the SKS functionality and shall use at least a signed communication channel when invoking this Method on the Server.

Signature

AddPushTarget (

[in]String ApplicationUri,

[in]String EndpointUrl,

[in]String SecurityPolicyUri,

[in]UserTokenPolicyUserTokenType,

[in] UInt16 RequestedKeyCount,

[in]Duration RetryInterval,

[out] NodeId PushTargetId

);

Argument

Description

ApplicationUri

ApplicationUri of the Server that is the target of the key push.

The ApplicationUri is used as name of the resulting PubSubKeyPushTarget object.

EndpointUrl

URL of the Endpoint of the Server that is the target of the key push

SecurityPolicyUri

Security policy the SKS shall use to establish a secure connection to the PushTarget

UserTokenType

The user token type used for the push. The default is Anonymous.

RequestedKeyCount

The number of keys to push on each call

RetryInterval

Interval the SKS shall use to retry pushing keys after an error appeared

PushTargetId

The NodeId of the added PubSubKeyPushTarget Object.

Method Result Codes

ResultCode

Description

Bad_NodeIdExists

A PushTarget with the ApplicationUri already exists but the arguments do not match the existing object.

Good_DataIgnored

A Object with the configuration already exists and was returned without adding a new Object.

Bad_InvalidArgument

One of the input arguments is invalid. The InputArgumentResult provides further details.

Bad_UserAccessDenied

The Session user is not allowed to configure the object.

Bad_SecurityModeInsufficient

The communication channel is not using signing.

Table 200 specifies the AddressSpace representation for the AddPushTarget Method.

Table 200 – AddPushTarget Method AddressSpace definition

Attribute

Value

BrowseName

AddPushTarget

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

HasProperty

Variable

InputArguments

Argument[]

PropertyType

Mandatory

HasProperty

Variable

OutputArguments

Argument[]

PropertyType

Mandatory

ConformanceUnits

PubSub Model SKS Push

This Method is used to remove a PubSubKeyPushTarget from the PushTargetFolder.

The Client shall be authorized to modify the configuration for the SKS functionality and shall use at least a signed communication channel when invoking this Method on the Server.

Signature

RemovePushTarget (

[in]NodeIdPushTargetId

);

Argument

Description

PushTargetId

NodeId of the PushTargetType Object to remove from the Server

Method Result Codes

ResultCode

Description

Bad_NodeIdUnknown

The PushTargetId is unknown.

Bad_NodeIdInvalid

The PushTargetId is not a NodeId of a PubSubKeyPushTarget Object.

Bad_UserAccessDenied

The Session user is not allowed to delete the PushTargetType Object.

Bad_SecurityModeInsufficient

The communication channel is not using signing.

Table 201 specifies the AddressSpace representation for the RemovePushTarget Method.

Table 201 – RemovePushTarget Method AddressSpace definition

Attribute

Value

BrowseName

RemovePushTarget

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

HasProperty

Variable

InputArguments

Argument[]

PropertyType

Mandatory

ConformanceUnits

PubSub Model SKS Push

This Method is used to add a PubSubKeyPushTargetFolderType Object to a PubSubKeyPushTargetFolderType Object.

The Client shall be authorized to modify the configuration for the PubSub functionality when invoking this Method on the Server.

Signature

AddPushTargetFolder (

[in]StringName,

[out]NodeIdPushTargetFolderNodeId

);

Argument

Description

Name

Name of the Object to create.

PushTargetFolderNodeId

NodeId of the created PubSubKeyPushTargetFolderType Object.

Method Result Codes

ResultCode

Description

Bad_BrowseNameDuplicated

A folder Object with the name already exists.

Bad_InvalidArgument

The Server is not able to apply the Name. The Name may be too long or may contain invalid characters.

Bad_UserAccessDenied

The Session user is not allowed to add a folder.

Table 202 specifies the AddressSpace representation for the AddPushTargetFolder Method.

Table 202 – AddPushTargetFolder Method AddressSpace definition

Attribute

Value

BrowseName

AddPushTargetFolder

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

HasProperty

Variable

InputArguments

Argument[]

PropertyType

Mandatory

HasProperty

Variable

OutputArguments

Argument[]

PropertyType

Mandatory

ConformanceUnits

PubSub Model SKS Push

This Method is used to remove a PubSubKeyPushTargetFolderType Object from the parent PubSubKeyPushTargetFolderType Object.

A successful removal of the PubSubKeyPushTargetFolderType Object removes recursively all contained PubSubKeyPushTargetType Objects and all contained PubSubKeyPushTargetFolderType Objects.

The Client shall be authorized to modify the configuration for the PubSub functionality when invoking this Method on the Server.

Signature

RemovePushTargetFolder (

[in]NodeIdPushTargetFolderNodeId

);

Argument

Description

PushTargetFolderNodeId

NodeId of the PubSubKeyPushTargetFolderType Object to remove from the Server.

Method Result Codes

ResultCode

Description

Bad_NodeIdUnknown

The PushTargetFolderNodeId is unknown.

Bad_UserAccessDenied

The Session user is not allowed to delete the folder.

Table 203 specifies the AddressSpace representation for the RemovePushTargetFolder Method.

Table 203 – RemovePushTargetFolder Method AddressSpace definition

Attribute

Value

BrowseName

RemovePushTargetFolder

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

HasProperty

Variable

InputArguments

Argument[]

PropertyType

Mandatory

ConformanceUnits

PubSub Model SKS Push