Device Settings Synchronization Options

Top  Previous  Next

It is possible to define custom synchronization options for every settings of Device. Access to per-setting synchronization options is provided by Edit Device Settings action of Device context. Here is a list of synchronization options available for each Device setting:

Option

Description

Synchronization Mode

There are several synchronization modes available:

Normal Synchronization. Value of setting is synchronized between AggreGate Server and Device during every synchronization cycle.
Synchronization Disabled. No synchronization is performed for this setting.
Device to Server Only. Forces the server to make server-side value read-only and disable device write operations for this setting. This is useful when a device/driver report setting as writable, but the actual write operations fail (e.g. due to insufficient permissions).
Direct Device Access. Value of setting is read directly from Device when it is requested by system components. If some system component tries to modify system values, changes are also written directly to the Device. With this setting, read/write operations may fail if Device I/O fails or Device returns an error.
Use Server-Side Master Value. In this mode server-to-device synchronization is always performed for this setting. Data contained in common table specified by Master Value setting (see below) is used instead of Device-level cached value. More information is available here.
Ignore Modification Time. Ignores both server-side and device-side setting modifications timestamps. Setting is synchronized from server to device if value was changed on the server and from device to server otherwise.
Custom. Uses a custom synchronization handler provided by the system, if any. This mode is usually enabled automatically by the system if custom handler is available, but may be overridden by a human.

Update History Storage Time

If this option is set to a non-zero value (i.e. update history saving is enabled) a persistent Updated event will be generated every time when setting value is modified in the server cache. This may happen if new value differing from the previous one is read from remote device or some system component modifies the cache. Updated event contains value of the variable, so its history may be used as a source data for reports and charts. Saving of history is disabled by default to prevent avalanche-like increase of database size.

History Mode

If set to Changes Only, historical value is saved (and Updated event is generated) only if value read from a device during current synchronization differs from the previous (cached) value. All Values option causes a historical value to be stored during every synchronization of the Device setting.

Custom Synchronization Period

This option may be used to define a custom synchronization period for a certain setting. Default value is NULL (<Not set>), so setting value is synchronized during the full synchronization cycle. Custom period is useful when it's necessary to read some fast-changing data from the Device.

Filter

If this filter expression is defined, it will be used to filter out values coming from both device and server:

If value is being synchronized from device to server and filter expression returns FALSE, value won't be written into server cache. This helps to treat some device-provided values as "bad" and drop them out.
If value is being changed by system operator, server component or external system and filter expression returns FALSE, the change request fails with an error.

Filter Expression Evaluation Environment

Filter Expression Resolution Environment:

Default Context

Context of current device.

Default Data Table

Current value, either taken from device or provided by system operator, server module or external system.

Default Row

0

Environment Variables

Standard variables only.

Master Value

Common table that is used as a master value for this setting.

These may be accessed via the settingSyncOptions variable.