[SLOT_n]
mode = collectorВиртуальный модуль-накопитель: собирает поступающие символы в строку.
Совместимость
Виртуальный модуль, аппаратной части не требует. Доступные слоты: 0-9.
Принцип работы
Каждая команда add дописывает значение в конец строки. Строка рапортуется
событием val, когда её длина достигла stringMaxLenght либо когда после
последнего символа прошло waitingTime миллисекунд. После рапорта строка
очищается; сбросить её досрочно можно командой clear.
Применяется в паре с номеронабирателем, матрицей кнопок или считывателем карт — собранная строка обычно уходит на проверку в whitelist.
Топики
База топика события:
<deviceName>/collector_<slot>— напримерmoduleBox/collector_0
База топика действия:
<deviceName>/collector_<slot>— напримерmoduleBox/collector_0
Полный топик — база плюс направление и имя: moduleBox/collector_6/event/val.
Опции
Доступные опции:
- disableOnStart — флаг, стартовать в выключенном состоянии и ждать
action/enableсо значением1. По умолчанию модуль активен сразу. - stringMaxLenght — число(int), максимальная длина строки. Диапазон 1–256. По умолчанию 7.
- waitingTime — число(int), время ожидания в миллисекундах. Диапазон 1–60000. По умолчанию 3000.
События
| Топик | Payload | Описание |
|---|---|---|
collector_<slot>/event/val | строка | Отчёт собранной строки |
collector_<slot>/event/enable | 0 / 1 | Состояние модуля - активен 1 или спит 0 |
Пример: топик moduleBox/collector_6/event/val, payload 1234567.
Команды
| Топик | Payload | Описание |
|---|---|---|
collector_<slot>/action/add | строка | Добавить данные в строку коллектора |
collector_<slot>/action/clear | — | Очистить строку коллектора |
collector_<slot>/action/enable | 0 / 1 | Включить (1) или выключить (0) модуль |
Примеры
[SLOT_6]
mode = collector
options = stringMaxLenght:4, waitingTime:5000
;цифры с матрицы кнопок собираются в код, код уходит на проверку
crosslink = collector_6/event/val:@->whitelist_7/action/check:@
[SLOT_0]
mode = buttonMatrix
options = outSlots:0 1, inSlots:2 3, mapping:1234
crosslink = buttonMatrix_0/event/key:@->collector_6/action/add:@Код из четырёх символов собирается и проверяется по списку. Если за пять секунд код не дописан, накопленное рапортуется как есть.
Подробнее — внутренние связи (crossLink).
Архив
Описание модуля для прошивок до перехода на конституцию — collector (архив).