Настройки элементов модели
Общие
Выберите Тип элемента. В зависимости от него формируются соответствующие поля формы для дальнейшего ввода данных.
Возможные типы:
- Узел – тип элемента, который позволяет объединять другие элементы в группы и формировать древовидную иерархию;
- Параметр – тип элемента для отображения полученных данных от устройства (например, текущее измерение сенсора). Параметры могут быть числовыми, логическими, строковыми или представлять собой объект или массив. При этом для числовых аргументов можно указать единицу измерения, изображение и задать уровни;
- Конфигурация – тип элемента, значение которого затем можно задать в интерфейсе объекта на вкладке Конфигурация. Конфигурационные значения удобно использовать в работе сценариев и обработчиков. По своей сути элемент с данным типом является статическим параметром, который необходимы для хранения дополнительной информации об объекте – например, максимально допустимая температура, объем топливного бака, длительность работы и т.п.
- Действие – тип элемента для отправки команды на устройство или запуска сценария;
- Событие – тип элемента, который фиксирует наступление определенных изменений в состоянии объекта. События используются в сценариях для переходов между состояниями объекта.

💡
У каждого типа есть пиктограмма, которая отображается слева от элемента в дереве модели. Это позволяет визуально
определять, к какому типу относится тот или иной элемент.
Далее введите уникальный по модели Идентификатор и Имя элемента. Идентификатор позволяет однозначно определить элемент в
системе. Он является названием поля из данных о состоянии устройства при обращении к нему через API. Имя, в отличие от
идентификатора, может быть неуникальным. Как идентификатор, так и имя генерируются при создании узла, и их следует
заменить на те идентификатор и имя, которые вам понятны и удобны.
💡
Идентификатор должен быть уникальным!
Идентификатор должен быть осмысленным!
Идентификатор – для внутренней работы системы, имя – для интерфейса пользователя.
Идентификатор должен быть осмысленным!
Идентификатор – для внутренней работы системы, имя – для интерфейса пользователя.
В платформе также заложены дополнительные функции для параметров со специальными идентификаторами:
- Системная информация, всегда присутствует в интерфейсе объекта
| Идентификатор параметра | Функция |
|---|---|
online | Статус подключения устройства: 🟢 онлайн, подключено внешнее устройство 🔵 онлайн, подключен бот платформы 🔴 офлайн |
_ts | Время получения пакета данных от устройства (хранится в микросекундах UTC). Если в модели не используется параметр с идентификатором time, то его функции выполняет _ts |
- Параметры, которые создает пользователь
| Идентификатор параметра | Функция |
|---|---|
time | Время, по которому сортируются пакеты данных от устройства в истории, может отличаться от времени получения (_ts).Часто используется, когда устройство параллельно с актуальной информацией высылает накопленные данные из архива |
lat, lon | Координаты перемещения объекта на карте |
angle | Угол поворота иконки объекта на карте |
x, y, z | Координаты перемещения объекта на схеме |
speed | Скорость перемещения объекта на карте при использовании движения по маршруту для бота |
💡
Придумывайте понятные и краткие имена. Если нужны детали, добавьте подробное описание.
Описание дает более полное представление о параметре. Оно выводится в качестве всплывающей подсказки при наведении
на название параметра или действия в интерфейсе объекта.
Для узлов с типами Узел и Событие других полей заполнять не нужно.
Описание полей для элементов с другими типами представлено ниже.
Для типа “Параметр”
Для параметра заполняются следующие поля:
- Тип данных – выберите один из возможных типов данных: числовой, логический, строковый, объект или массив. Тип
данных служит для корректного отображения значений параметров в интерфейсе. Также в разделах При разборе и *
Отображение* для определенных типов есть дополнительная возможность указать:
- Числовой: множитель, единицу измерения, количество знаков после запятой, изображение и уровни перехода;
- Логический: изображение и уровни перехода;
- Строковый: изображение и уровни перехода; Для параметров с типом данных Объект предусмотрено выполнение разбора данных в формате JSON (пример >>>).
- Источник – по источнику происходит поиск значения параметра в структуре данных, полученных от устройства, формируется по-разному в зависимости от протокола передачи данных. Настройка источников для конкретных протоколов подробно рассмотрена в разделе Примеры. Источник может быть пустой, если значение параметра рассчитывается из обработчика;
- Линейный – данный переключатель определяет, можно ли построить по параметру линейный график (плавно возрастающий или плавно убывающий): например, по температуре можно, а по широте или долготе – нет, такой график по отдельной координате не имеет смысла.
Разделы При разборе и Отображение открывают дополнительные поля:
- Множитель – для умножения значения параметра, полученного от устройства, на указанную величину;
- Сохранять binary как – для отображения данных в интерфейсе объекта в разном формате (например, Text – “ok”, Base64 – “b2s=”, HEX – “6F 6B”);
- Единица измерения – для отображения рядом с числом; дополнительные функция есть у следующих единиц измерения:
- проценты (%) - число помещается в шкалу, заполняющуюся согласно полученному значению процента;

- миллисекунды (мс) - число, полученное в миллисекундах UNIX, конвертируется в удобочитаемый формат даты и времени.

- Количество знаков после запятой – возможность задать для числовых параметров количество выводимых цифр в дробной части (максимум 15 знаков);
- Отображать на карточке объекта – включите чекбокс, чтобы иконка параметра появилась на карточке объекта. Если для
параметра не установлена иконка, на карточке отобразится дефолтная пиктограмма параметра. Она будет менять цвет в соответствии с включенными уровнями, при наведении можно увидеть текущее значение параметра. Данная функция полезна для быстрого визуального контроля важных показателей устройства без перехода в журнал объекта;


- Включить уровни – опция для включения уровней. Уровнями можно задать пороги изменения текста около значения параметра и цвета иконки. Также уровни используются в сценариях автоматизации, при построении треков и в некоторых виджетах дашбордов.
| В модели | В интерфейсе объекта |
|---|---|
![]() | ![]() |
Настройки для включенных уровней:
- Событие при входе в уровень – если чекбокс включен, при попадании значения параметра в уровень генерируется событие. Такие события можно использовать в сценариях автоматизации;
| В модели | В редакторе сценария |
|---|---|
![]() | ![]() |
- Иконка – SVG изображение для дополнительной индикации, представляет параметр в графическом виде в журнале и на карточке объекта. Цвет иконки меняется в соответствии с установленными порогами для уровней.
💡
Иногда после загрузки собственного SVG изображения его цвет не меняется в соответствии с выставленными уровнями. В этом
случае откройте картинку через любой текстовый редактор и уберите поле “fill”. После этого загрузите обновленное SVG
изображение еще раз. Теперь его цвет будет меняться согласно заданным уровням.
Настройка отображения уровней отличается для параметров с разными типами данных:
-
число
- изменение уровня при попадании полученной величины в определенный диапазон значений;

- изменение уровня при точном совпадении полученной величины с указанным значением;

-
логический тип

- строка

Для типа “Конфигурация”
Для конфигурации, как и для параметра, выбирается Тип данных: Число, Логический, Строка, Таблица.
В зависимости от типа появляются следующие Настройки отображения:
-
Отображение – внешний вид конфигурационного параметра в интерфейсе объекта:
- Значение – вид отображения, доступный для конфигурационного параметра с типом данных Число или Строка. В этом случае значение в интерфейсе объекта указывается в поле ввода;
В модели В интерфейсе объекта 

- Диапазон (поле ввода) – вид отображения, доступный для конфигурационного параметра с типом данных Число. В этом случае значение в интерфейсе объекта указывается в поле ввода, но дополнительно можно установить границы От и До. В объекте при попытке ввода значения, выходящего за указанные минимум или максимум, появится соответствующая ошибка;
В модели В интерфейсе объекта 

- Диапазон (слайдер) – вид отображения, доступный для конфигурационного параметра с типом данных Число. В этом случае значение в интерфейсе объекта либо выбирается положением ползунка, либо стрелочками. Дополнительно можно установить границы От и До и Шаг, с которым перемещается ползунок. В объекте при попытке ввода значения, выходящего за указанные минимум или максимум, появится соответствующая ошибка;
В модели В интерфейсе объекта 

- Выпадающий список – вид отображения, доступный для конфигурационного параметра с типом данных Число или * Строка*. В этом случае значение в интерфейсе объекта выбирается из заранее заданных в модели вариантов списка. Для каждого элемента списка необходимо заполнить поля Значение и Текст: Значение – фактическое значение для конфигурационного параметра, Текст – его название для отображения в списке;
В модели В интерфейсе объекта 

- Значение по умолчанию – исходное значение конфигурационного параметра, которое используется, пока вы не зададите другое значение.
💡
Конфигурационные параметры бывают очень полезны, когда на разных объектах надо использовать одинаковый сценарий работы,
но отличающийся по нескольким критериям. Например, максимальное значение температуры в спальне отличается от
аналогичного показателя для кабинета. Чтобы не создавать два разных сценария климат-контроля для этих помещений,
параметр максимальной температуры можно вынести в конфигурацию объекта. Указание значения по умолчанию в модели позволит
задать начальное значение для этого параметра. Затем, при необходимости, вы можете его менять на конкретных объектах.
Для типа “Действие”
Для действия заполняется поле Выполнить – выберите тип действия, которое необходимо выполнить:
- Команду к устройству – в поле Отправить выберите тип команды в зависимости от протокола, после чего в разделе С параметрами укажите параметры команды;
- Сгенерировать событие – в поле Событие выберите одно из созданных в модели событий, дополнительно в Payload (Данные) можно указать какие-то сведения о событии, чтобы впоследствии обрабатывать их в сценарии автоматизации или внешней системе, подключенной по WebSocket;

- Сценарий – в поле Сценарий выберите тот сценарий, который нужно запустить по команде.

Для Команды к устройству доступны дополнительные настройки:
- Время ожидания ответа – время, за которое должен прийти ответ от устройства.

В случае если устройство не ответило на команду, соединение с ним разрывается.
| Ответ получен за указанное время, команда выполнена | Ответ не получен, команда не выполнена |
|---|---|
![]() | ![]() |
- Требует подтверждения – если чекбокс включен, при отправке команды из интерфейса объекта появится окно для дополнительного подтверждения отправки команды. В списке команд такое действие помечается красным индикатором;

💡
При отправке команды с подтверждением по API, к запросу необходимо добавлять флаг
confirm=true.POST /api/v1/objects/:id/commands/:command?confirm=true:id - идентификатор объекта, на который отправляется команда;:command - идентификатор команды в модели.- Отправить – выберите тип команды, если для протокола, по которому создана модель, предусмотрена такая возможность.
В параметрах команды можно указать:
- конкретные значения, которые будут каждый раз отправляться в команде;

- параметры, значение которых можно указать непосредственно при отправке команды. Это нужно, если пользователь не знает
заранее те значения, которые необходимо передавать в команде, либо эти значения раз от раза могут меняться. Для
создания такого параметра необходимо при создании команды в модели объявить его в фигурных скобках
{{param_name}};

- текущие значения параметров устройства. Для создания такого параметра необходимо для этого действия в модели указать в
фигурных скобках
object.stateи после точки написать идентификатор параметра из модели (например,{{object.state.temperature}}). При отправке команды подставится значение этого параметра из журнала.

Для корневого узла
Для корневого узла модели помимо имени и описания можно задать иконку объекта. Иконки объединены в смысловые группы, а в
поле выбора иконки доступен поиск по названию на английском языке.

Все объекты с такой моделью будут отображаться на карте с заданным изображением.

При этом можно использовать как стандартные встроенные иконки, так и загрузить собственное изображение в формате SVG.





