Есть задача получения и хранения инфо о состоянии сетевого оборудования (конверторы ethernet<->serial), к которому подключён прибор. Т.е., по сути, нужен “драйвер” для опроса такого оборудования.
Из описания фреймворка понятно, как реализовать часть фукнционала такого драйвера: запись новых данных через setConsumption(), получение исходных данных тоже, конечно, понятно.
Но есть несколько вопросов:
Есть ли пример внешнего модуля, работающего именно в режиме “драйвера”? Не совсем понятно, с чего начать.
Можно ли модифицировать/использовать пользовательские enum при написании модулей? Т.к., например, тип MeasurePoint или тревоги должен быть новый …
Можно ли использовать механизм опроса самого ЛЭРС для “драйвера” или он должен вызываться внешним планировщиком?
Есть пример внешнего модуля “Пульт управления теплосчетчиком ВКТ-5”. На его основе можно написать “как бы драйвер”, которым можно опрашивать данные вручную.
Нет.
Для идентификации точек учета по собственному признаку, могу порекомендовать атрибуты точек учета (свойство Attributes у класса MeasurePoint).
Насчет нештаток - пока нет вариантов. Можете создать отдельную тему для обсуждения этого вопроса.
Мы планируем дать возможность сторонним разработчикам писать собственные драйвера. Эта возможность появится в одной из следующих версий ЛЭРС УЧЕТ.
Пока вы можете написать “Пульт управления” без интерфейса - не как внешний модуль, а как обычную программу, которую можно будет запускать через планировщик.
Некоторый функционал уже имеется, но пока что полноценной возможности писать свои драйвера нету, т.к. этот вопрос еще прорабатывается. Если хотите участвовать в его проработке, мы можем с вами сотрудничать.
Иван, спасибо за оперативный ответ!
Я в кратко опишу задачу над которой мы работаем, а вы направьте меня в нужное направление пожалуйста.
У меня есть устройства которые снимают показания с приборов тепло/водо/электро учета.
На выходе имеется Websocket API через который мы получаем данные.
От Вас нужна краткая инструкция каким образом возможно эти данные грузить Lers.
Как я сделал сейчас:
У точки учета есть атрибуты - по которым я делаю идентификацию, точка учета - устройство.
Далее с помощью Lers Framework я эти данные по мере поступления раскидываю по точкам учета.
Правильно, или есть более ровный путь?
Т.к. у вас устройств несколько, это вполне нормальное решение. Не думаю, что вам нужно переделывать это под драйвер, т.к. драйвер как правило пишется для отдельной модели устройства. К тому же функционал написания пользовательских драйверов еще только прорабатывается.