Scanner (сканер) - это модуль, который анализирует какую-либо шину на подключённые устройства либо ищет устройства в локальной сети. Найденные устройства формируются в список, для выбранного устройства качается модуль и становится доступен в i3 lite.
Схема работы сканера:
- Сканер загружается из магазина;
- Пользователь вводит параметры сканера (IP, Port и т.д) и эти параметры передаются в скрипт сканера;
- Сканер, обработав введенные параметры, опрашивает шину на устройства или ищет устройства в локальной сети;
- Из полученных устройств формируется список;
- При выборе определенного устройства в списке, сканер передаёт параметры выбранного устройства в модуль.
При разработке сканера нужно учесть:
- Параметры сканера, при добавлении из магазина;
- Логику сканера;
- Передачу параметров выбранного устройства в модуль;
- Логику модуля, с учётом переданных от сканера параметров.
Процесс разработки сканера ничем не отличается от разработки модуля. Точно также сканеру необходимо нарисовать визуальную часть, создать драйвер и написать скрипт с логикой. Основным отличием является то, что сканер может работать только на панели управления и сканер никогда не будет запущен на сервере, поэтому, при разработке скриптов, нет необходимости разделять скрипты на драйверные и интерфейсные.
Также при разработке сканера появляется новая логика работы. Первым делом необходимо сделать модуль для управления устройством, далее надо загрузить модуль в магазин модулей. При загрузке модуля, вы увидите уникальный идентификатор вашего модуля. Когда вы будете разрабатывать сканер, вам необходимо написать скрипт со следующей логикой:
- Создание драйвера
- Поиск оборудования
- Если оборудование найдено, надо определить что это за оборудование
- При помощи команды ModuleSetupFinish (ID модуля, js объект с настройками setup данного модуля)
После этого приложение скачает модуль из магазина модулей и установит его.