Table of Contents

Method StartValueMonitor

Namespace
Skyline.DataMiner.Core.DataMinerSystem.Common
Assembly
Skyline.DataMiner.Core.DataMinerSystem.Common.dll

StartValueMonitor(string, int, Action<TableValueChange>, TimeSpan, bool)

Starts monitoring value changes in the specified table. Every change will invoke the specified onChange action.

void StartValueMonitor(string sourceId, int primaryKeyColumnIdx, Action<TableValueChange> onChange, TimeSpan subscribeTimeout, bool includeCurrentValues)

Parameters

sourceId string

The identifier for the source of the subscription (e.g., a GUID or unique string).

primaryKeyColumnIdx int

The index of the table's primary key column.

onChange Action<TableValueChange>

The action to perform on each change.

subscribeTimeout TimeSpan

The maximum time to wait for the subscription to be established.

includeCurrentValues bool

true to also receive the current values; otherwise false.

Remarks

These extension methods are intended for use outside of Protocols (e.g., in Automation scripts or external apps).

If you are working **within a Protocol**, use the methods defined in the Skyline.DataMiner.Core.DataMinerSystem.Protocol.Subscription.Monitors namespace instead. These versions use SLProtocol to correctly handle subscription cleanup.

If includeCurrentValues is set to true and the table is a partial table, the initial data will only contain the first page of the table. Changes to other pages will still trigger the onChange action, but the initial data will not include those other pages.

Exceptions

ArgumentNullException

sourceId, or onChange is null.

ArgumentOutOfRangeException

primaryKeyColumnIdx is less than 0.

InvalidOperationException

Could not establish subscriptions within the given timeout.

StartValueMonitor(string, int, Action<TableValueChange>, bool)

Starts monitoring value changes in the specified table, using a default subscription timeout.

void StartValueMonitor(string sourceId, int primaryKeyColumnIdx, Action<TableValueChange> onChange, bool includeCurrentValues)

Parameters

sourceId string

The identifier for the source of the subscription (e.g., a GUID or unique string).

primaryKeyColumnIdx int

The index of the table's primary key column.

onChange Action<TableValueChange>

The action to perform on each change.

includeCurrentValues bool

true to also receive the current values; otherwise false.

Remarks

These extension methods are intended for use outside of Protocols (e.g., in Automation scripts or external apps).

If you are working **within a Protocol**, use the methods defined in the Skyline.DataMiner.Core.DataMinerSystem.Protocol.Subscription.Monitors namespace instead. These versions use SLProtocol to correctly handle subscription cleanup.

If includeCurrentValues is set to true and the table is a partial table, the initial data will only contain the first page of the table. Changes to other pages will still trigger the onChange action, but the initial data will not include those other pages.

Exceptions

ArgumentNullException

sourceId, or onChange is null.

ArgumentOutOfRangeException

primaryKeyColumnIdx is less than 0.

InvalidOperationException

Could not establish subscriptions within the default timeout.

StartValueMonitor(string, int, int[], Action<TableValueChange>, TimeSpan, bool)

Starts monitoring filtered column value changes in the specified table.

void StartValueMonitor(string sourceId, int primaryKeyColumnIdx, int[] filteredColumnPids, Action<TableValueChange> onChange, TimeSpan subscribeTimeout, bool includeCurrentValues)

Parameters

sourceId string

The identifier for the source of the subscription (e.g., a GUID or unique string).

primaryKeyColumnIdx int

The index of the table's primary key column.

filteredColumnPids int[]

Array of column parameter IDs to monitor. The result will contain only these and the primary key.

onChange Action<TableValueChange>

The action to perform on each change.

subscribeTimeout TimeSpan

The maximum time to wait for the subscription to be established.

includeCurrentValues bool

true to also receive the current values; otherwise false.

Remarks

These extension methods are intended for use outside of Protocols (e.g., in Automation scripts or external apps).

If you are working **within a Protocol**, use the methods defined in the Skyline.DataMiner.Core.DataMinerSystem.Protocol.Subscription.Monitors namespace instead. These versions use SLProtocol to correctly handle subscription cleanup.

If includeCurrentValues is set to true and the table is a partial table, the initial data will only contain the first page of the table. Changes to other pages will still trigger the onChange action, but the initial data will not include those other pages.

Exceptions

ArgumentNullException

sourceId, filteredColumnPids, or onChange is null.

ArgumentOutOfRangeException

primaryKeyColumnIdx is less than 0.

InvalidOperationException

Could not establish subscriptions within the given timeout.

StartValueMonitor(string, int, int[], Action<TableValueChange>, bool)

Starts monitoring filtered column value changes in the specified table, using a default subscription timeout.

void StartValueMonitor(string sourceId, int primaryKeyColumnIdx, int[] filteredColumnPids, Action<TableValueChange> onChange, bool includeCurrentValues)

Parameters

sourceId string

The identifier for the source of the subscription (e.g., a GUID or unique string).

primaryKeyColumnIdx int

The index of the table's primary key column.

filteredColumnPids int[]

Array of column parameter IDs to monitor. The result will contain only these and the primary key.

onChange Action<TableValueChange>

The action to perform on each change.

includeCurrentValues bool

true to also receive the current values; otherwise false.

Remarks

These extension methods are intended for use outside of Protocols (e.g., in Automation scripts or external apps).

If you are working **within a Protocol**, use the methods defined in the Skyline.DataMiner.Core.DataMinerSystem.Protocol.Subscription.Monitors namespace instead. These versions use SLProtocol to correctly handle subscription cleanup.

If includeCurrentValues is set to true and the table is a partial table, the initial data will only contain the first page of the table. Changes to other pages will still trigger the onChange action, but the initial data will not include those other pages.

Exceptions

ArgumentNullException

sourceId, filteredColumnPids, or onChange is null.

ArgumentOutOfRangeException

primaryKeyColumnIdx is less than 0.

InvalidOperationException

Could not establish subscriptions within the default timeout.

Advanced search syntax