Параметры синхронизации настроек
Возможно определить опции пользовательской синхронизации для каждой из настроек устройства. Доступ к предварительным опциям синхронизации осуществляется через опцию изменить настройки устройства контекста устройства. Ниже приведен список доступных опций синхронизации для каждой настройки устройства:
Опция | Описание | ||
Режим синхронизации | Существует несколько режимов синхронизации:
| ||
Время хранения истории | Если данная опция установлена на ненулевое значение (т.е. хранение истории обновлений актвировано), постоянное событие Обновленный будет появляться каждый раз, когда заданное значение изменено в серверном кэше. Это может происходить, если новое значение, отличающееся от предыдущего, считывается с удаленного устройства, или какой-либо компонент системы модифицирует кэш. Событие обновления содержит в себе значение переменной, поэтому его история может использоваться как источник информации для отчетов и таблиц. Сохранение истории отключено по умолчанию во избежание лавинообразного увеличения базы данных. | ||
Режим записи истории | Определяет, какие значения сохранены в моментальном снимке устройства и в хранилище истории. Отрицательные и нулевая опции имеют особое значение. | ||
Режим истории | Описание | Значение | |
0 | Все нормальные значения | Все нормальные значения, включая дупликаты, сохранены. | |
-1 | Только измененные значения | Сохранены только нормальные измененные значения. Дупликаты (повторяющиеся значения) пропускаются. | |
-2 | Измененные, ложные | Сохраняются измененные и ошибочные значения (образцы в плохом качестве). | |
-3 | Все нормальные и неподключенные | Сохраняются все нормальные (различные) значения. Значения также сохраняются, когда устройство отключено. | |
-4 | Все нормальные и ошибочные | Сохраняются все нормальные (различные) значения. Также сохраняются значения с плохим качеством. | |
-5 | Измененные, неподключенные и ошибочные | Нормальные значения сохраняются, если они отличаются. Однако сохраняются значения с плохим качеством. Значения также сохраняются, когда устройство отключено. | |
-6 | Все значения | Сохраняются все нормальные значения (включая дупликаты) и значения с плохим качеством. Значения также сохраняются, когда устройство отключено. | |
Если Режим записи истории выставлен на любое положительное целое число, исторические значения будут сохраняться в базу данных только каждый энный цикл синхронизации, где N - это значение Режима Записи Истории. Однако события обновления генерируются во время каждого цикла синхронизации, и заинтересованные стороны будут уведомляться обо всех изменениях значений. Вы также сможете контролировать тот факт, как систему оповещают об изменениях значений: о каждом обновлении значений переменных или только об изменениях (см. Обновления доставки). Если Время Хранения Истории Обновлений не установлено (т.е. история не сохраняется), период синхронизации скорее короткий, а у самой настройки сложный формат (т.е. много полей или вложенных таблиц). Настройка Режим записи истории во Всех нормальных значениях может улучшить производительность, потому что сервер не будет загружать старые кэшированные значения и сравнивать их с новыми во время каждой синхронизации. | |||
Период синхронизации | Данная опция может использоваться для определения периода пользовательской синхронизации у определенной настройки. Значение по умолчанию - NULL (<Не установлено>), поэтому значение настройки синхронизируется во время полного цикла синхронизации. Пользовательская синхронизация полезна, когда необходимо прочитать некоторые быстроменяющиеся данные с устройства. | ||
Обновления доставки | Этот флажок контролирует отправление событий обновления переменной. Когда активирован, событие обновления переменной будет инициироваться для каждой синхронизации, даже если значение переменной остается таким же (см. Режим записи истории). | ||
Состояние | Если определено выражение состояния, синхронизация будет пропущена, если возвращается значение false. Полезно для отключенной синхронизации в период технического обслуживания, ночных часов и т.д. | ||
Среда вычисления выражения состояния: | |||
Контекст текущего устройства. | |||
Текущее значение переменной, которое хранится в кэше настроек. | |||
0 | |||
Только стандартные переменные. | |||
Фильтр | Если определено выражение фильтра, то будут фильтроваться значения, собранные как с устройства, так и с сервера:
| ||
Среда вычисления выражения фильтра | |||
Контекст текущего устройства. | |||
Текущее значение, взятое от устройства или же предоставленное системным оператором, серверным модулем или внешней системой. | |||
0 | |||
Только стандартные переменные. | |||
Пример: Это выражение фильтра сравнивает температуру по Цельсию, извлеченную во время предыдущей синхронизации, с новым значением, только что полученным из устройства. Синхронизация происходит, только если разница между ними превышает 0.5 градусов, позволяя избежать колебания значения сервера. | |||
Выражение заданного значения | Выражение, используемое для извлечения значения и записи его на устройстве, если активен режим синхронизации Использовать заданное значение сервера. | ||
Среда вычисления выражения заданного значения: | |||
Контекст текущего устройства. | |||
Отсутствует. | |||
0 | |||
Только стандартные переменные | |||
Добавить предыдущее значение в событие обновления переменной | Флаг, указывающий, что событие обновления переменной будет содержать предыдущее значение переменной |
Все это доступно для просмотра через переменную settingSyncOptions.