This Service is used to modify MonitoredItems of a Subscription. Changes to the MonitoredItem settings shall be applied immediately by the Server. They take effect as soon as practical but not later than twice the new revisedSamplingInterval.

The return diagnostic info setting in the request header of the CreateMonitoredItems or the last ModifyMonitoredItems Service is applied to the Monitored Items and is used as the diagnostic information settings when sending Notifications in the Publish response.

Illegal request values for parameters that can be revised do not generate errors. Instead the Server will choose default values and indicate them in the corresponding revised parameter.

Table 72 defines the parameters for the Service.

Table 72 – ModifyMonitoredItems Service Parameters

Name

Type

Description

Request

requestHeader

RequestHeader

Common request parameters (see 7.33 for RequestHeader definition).

subscriptionId

IntegerId

The Server-assigned identifier for the Subscription used to qualify the monitoredItemId (see 7.19 for IntegerId definition).

timestampsToReturn

Enum

Timestamps ToReturn

An enumeration that specifies the timestamp Attributes to be transmitted for each MonitoredItem to be modified. The TimestampsToReturn enumeration is defined in 7.40. When monitoring Events, this applies only to Event fields that are of type DataValue.

itemsToModify []

MonitoredItemModifyRequest

The list of MonitoredItems to modify. This structure is defined in-line with the following indented items.

monitoredItemId

IntegerId

Server-assigned id for the MonitoredItem.

requestedParameters

Monitoring Parameters

The requested values for the monitoring parameters. The MonitoringParameters type is defined in 7.21.

If the number of notifications in the queue exceeds the new queue size, the notifications exceeding the size shall be discarded following the configured discard policy.

Response

responseHeader

Response Header

Common response parameters (see 7.34 for ResponseHeader definition).

results []

MonitoredItemModifyResult

List of results for the MonitoredItems to modify. The size and order of the list matches the size and order of the itemsToModify request parameter. This structure is defined in-line with the following indented items.

statusCode

StatusCode

StatusCode for the MonitoredItem to be modified (see 7.39 for StatusCode definition).

revisedSampling

Interval

Duration

The actual sampling interval that the Server will use. The Server returns the value it will actually use for the sampling interval. This value is based on a number of factors, including capabilities of the underlying system.

The Server shall always return a revisedSamplingInterval that is equal or higher than the requested samplingInterval. If the requested samplingInterval is higher than the maximum sampling interval supported by the Server, the maximum sampling interval is returned.

revisedQueueSize

Counter

The actual queue size that the Server will use.

filterResult

Extensible Parameter

MonitoringFilter Result

Contains any revised parameter values or error results associated with the MonitoringFilter specified in the request. This parameter may be null if no errors occurred. The MonitoringFilterResult parameter type is an extensible parameter type specified in 7.22.

diagnosticInfos []

DiagnosticInfo

List of diagnostic information for the MonitoredItems to modify (see 7.12 for DiagnosticInfo definition). The size and order of the list matches the size and order of the itemsToModify request parameter. This list is empty if diagnostics information was not requested in the request header or if no diagnostic information was encountered in processing of the request.

Table 73 defines the Service results specific to this Service. Common StatusCodes are defined in Table 182.

Table 73 – ModifyMonitoredItems Service Result Codes

Symbolic Id

Description

Bad_NothingToDo

See Table 182 for the description of this result code.

Bad_TooManyOperations

See Table 182 for the description of this result code.

Bad_TimestampsToReturnInvalid

See Table 182 for the description of this result code.

Bad_SubscriptionIdInvalid

See Table 182 for the description of this result code.

Table 74 defines values for the operation level statusCode parameter that are specific to this Service. Common StatusCodes are defined in Table 183.

Table 74 – ModifyMonitoredItems Operation Level Result Codes

Symbolic Id

Description

Bad_MonitoredItemIdInvalid

See Table 183 for the description of this result code.

Bad_MonitoredItemFilterInvalid

See Table 183 for the description of this result code.

Bad_MonitoredItemFilterUnsupported

See Table 183 for the description of this result code.

Bad_FilterNotAllowed

See Table 182 for the description of this result code.