Home - GerasimGerasimov/Tagger GitHub Wiki
Tagger
Tagger от слова tag (тег). Он знает всё о хостах, протоколах, привязке тегов параметров к регистрам
Как это работает?
Конфигурация довольно статична, в 100% наших случаев, мы взаимодействуем с заранее сконфигурированным оборудованием рассаженным по заранее известным физическим интерфейсам. Поэтому:
- В папке HOSTS лежат папки с названиями-именами (любое человеко-читаемое) хостов с которыми будет взаимодействовать Tagger. Имена хостов будут участвовать в тегах на первом месте.
- В папке хоста лежат:
- Файл config.json где указано:
- какой физический интерфейс используется (COM или HTTP), и его настройки;
- каким HTTP-портом и URL (не обязательно localhost:port) будет представлен интерфейс в системе (для поднятия сервиса Serial, например);
- какие устройства (указаны имена ini-файлов, без ini) сидят на этом интерфейсе;
- ini загружается полностью, поэтому Tagger знает всё о параметрах и их адресах;
- по какому протоколу общается устройство (для перекодировки тегов в команды полевой шины и обратно с контролем соблюдения протокола)
- какой адрес в сети занимает устройство
- какой диапазон регистров читать (в последствии надо контролировать входит ли тег в диапазон) и с какой периодичностью, для организации очереди запросов в сервисе SlotsService;
- ini-файлы устройств подключенных к хосту. Если несколько одинаковых устройств, то достаточно одного ini-файла, значит нужен механизм, который не позволяет повторно парсить одинаковые ini-файлы
- Файл config.json где указано: