Настройка структуры данных отправляемых в SAYMON¶
Настройка параметров узлов SAYMON и преобразования структуры данных осуществляется с помощью файла конфигурации, находящийся по адресу "%DJinDir%/PluginConfigs/SaymonConfig/IntegrationConfig.json". Данный файл не предполагает редактирования конечным пользователем.
Пример конфигурации:
Конфигурация узлов в SAYMON¶
Словарь Configs файла IntegrationConfig.json позволяет определить специфичные параметры для узлов в SAYMON. Ключом словаря Configs является адрес узла SAYMON, значение определяет параметры узла SAYMON.
Путь может содержать символы '*' для указания обобщенного пути. Например, "\\DJin\\players" задаёт параметры для одного узла "players", "\\DJin\\players\\*" задаёт параметры для всех детей узла "players", "\\DJin\\players\\*\\player_elems" задает параметры для узла "player_elems" у всех детей "players".
Для узлов можно задать следующие параметры:
-
ClassId (string) - идентификатор класса SAYMON, с которым будет создан узел SAYMON. По умолчанию берётся из настроек плагина.
-
SendInterval (int) - интервал отправки данных в SAYMON в секундах. По умолчанию 10 секунд.
-
SortPropName (string) - имя колонки для сортировки данных. По умолчанию без сортировки.
-
SortDesc (bool) - сортировка по убыванию. По умолчанию выключена (false).
Настройка преобразования данных WMI для SAYMON¶
По умолчанию, плагин интеграции с SAYMON отправляет данные на сервер со структурой, аналогичной структуре данных WMI интеграции. Это не всегда приемлемо с точки зрения логики обработки данных в SAYMON. Словарь Maps файла IntegrationConfig.json позволяет преобразовать данные для SAYMON для определённых узлов. Ключом словаря Maps является адрес узла WMI, значение определяет параметры преобразования.
Реализованы следующий типы преобразования узлов:
Normal ("Type": 0). Позволяет отобразить узел WMI в SAYMON по другому адресу.
Требуемые параметры:
- DstPath - новый адрес узла в SAYMON
MapToProps (Type": 1) Позволяет развернуть узел-таблицу WMI по значению его свойства, как ключу.
Например, WMI узел-таблица '\playback\players' разворачивается на узлы '\players\НАЗВАНИЕ_ПЛЕЕРА', где в объекте 'НАЗВАНИЕ_ПЛЕЕРА' буду данные о плеере (строчка из таблицы WMI).
Требуемые параметры:
- DstPath - адрес корневого узла в SAYMON
- PropName - название колонки в узле-таблице WMI
MapToItems (Type": 2) Позволяет развернуть узел-таблицу WMI по значению PropName с дочерним элементом.
Например, WMI узел-таблица '\playback\player_elems' разворачивается в '\players\НАЗВАНИЕ_ПЛЕЕРА\player_elems'. В узел 'player_elems' буду записываться данные о проигрываемых элементах (строчка из таблицы WMI).
Требуемые параметры:
- DstPath - адрес корневого узла в SAYMON,
- PropName - название колонки в WMI узле (фактически название первого дочернего узла)
- ChildClassName - название второго дочернего узла (статическое)
Skip ("Type": 3) Позволяет скрыть узел WMI в SAYMON