GPS сервис ViaLatM — язык сценариев
В этой серии публикаций будет описан интегрированный в сервис ViaLatM язык сценариев.
Язык сценариев ViaLatM позволяет:
- Создавать новые параметры на основе сообщений, приходящих от устройств
- Осуществлять логическую обработку событий, возникающих в устройствах
- Формировать новые системные события
- Посылать команды на устройства
- Осуществлять ретрансляцию сообщений устройств во внешние системы
Сценарий может применяться как к отдельному устройству (уже доступно в сервисе), так и к учетной записи со всеми ее ресурсами: трекеры, геозоны, … (в процессе тестирования).
Использование языка сценариев позволяет упростить и разгрузить интерфейс приложения и настроить его на конкретные варианты использования сервисов персонального мониторинга и мониторинга транспорта.
Основные элементы языка сценариев: переменные, функции, операторы, команды, события.
Переменные
Переменные используются при работе с сообщениями устройств. На основании данных из поступающих сообщений и применяя к ним формулы, можно создавать новые переменные, которые будут доступны для отображения в приложении и использования в языке сценариев.
Примеры:
Показания датчика топлива: X1;
Топливо в баке: FUEL = LINEAR (X1,0,0,1000,40);
Дистанция: DIST = DISTANCE (L, UNIT.L);
В случае, если после идентификатора переменной следует знак »;» (нет операции присваивания), это означает что она соответствует параметру сообщения, пришедшему от устройства (X1 — аналоговый датчик подключенный к топливному баку).
Список переменных, присылаемых конкретным устройством, зависит от типа устройства и его настроек. Информация по идентификаторам переменных, присылаемая различными типами устройств, находится в секции «Переменные».
Функции
Помимо стандартных математических функций, в языке есть встроенные функции для работы с телематическими данными. Например:
Вычисление расстояния между двумя точками местоположений — DISTANCE.
Преобразование аргумента по линейной функции — LINEAR. В простейших случаях может применяться как калибровочная функция для расчета топлива в баке по датчикам.
Список доступных функций в секции — Функции .
Список будет значительно расширен, особенно в плане работы с телематическими данными. К примеру, среди кандидатов на внедрение функция TIME_OF_DAY, позволяющая получить время суток с учетом текущего местоположения события.
Пример использования
Далеко не все устройства дают данные по ускорению или общему пробегу. Для таких устройств можно восполнить это с помощью языка сценариев ViaLatM. В панели «Настройка переменных и сценария» добавляются строки:
Ускорение: ACCELERATION = (V-UNIT.V)/(DT-UNIT.DT);
Пробег: ODOM = VARDEF (UNIT.ODOM,0)+DISTANCE (L, UNIT.L);
В результате в панели устройства «Органайзер окна подсказки» появляются два дополнительных атрибута «Ускорение» и «Пробег», при их выборе, они будут отображаться в окне подсказки (при клике на иконку устройства). Также они становятся доступны в отчетах «График по параметрам» и можно получать по ним графики.
В следующих публикациях будет продолжено описание языка сценариев ViaLatM