name: wb-mqtt-tmpl description: "Создавать JSON-описание MQTT-шаблона wb-mqtt-serial по документации Modbus-регистров (datasheet/register map/manual): извлекать все регистры, нормализовать адреса и типы, классифицировать channels/parameters, задавать enum/conditions/translations и возвращать структуру device_info+registers для small/medium/full шаблонов. Использовать, когда нужно сгенерировать или проверить шаблон устройства Wiren Board по карте Modbus-регистров."
WB MQTT From Modbus Registers
Overview
Преобразовать таблицы Modbus-регистров в единый JSON-контракт для генерации wb-mqtt-serial шаблонов. Использовать правила и ограничения из этого скилла как источник истины.
Workflow
- Определить вход и целевой объем:
- Принять datasheet/register map/manual или список регистров.
- Согласовать
template_type:small,medium,full. - Определить языки переводов (
ruпо умолчанию,enне дублировать в translations).
- Извлечь регистры:
- Взять все таблицы Modbus (holding/input/coil/discrete).
- Игнорировать маркетинг, механику, монтаж и прочие нерегистровые разделы.
- Если есть битовые поля в одном регистре, разложить на отдельные записи
register:bit:width.
- Нормализовать свойства:
- Привести адреса, формат, scale/offset, units, access, min/max, word_order, error_value.
- Привести имена/идентификаторы групп к snake_case.
- Проставить
is_parameter,channel_type,enum/enum_titlesилиenum_entries.
- Собрать финальный JSON:
- Строго вернуть объект вида
{ "device_info": ..., "registers": [...] }. - Вернуть только JSON без markdown и пояснений.
- Для неизвестных опциональных полей ставить
null.
- Проверить целостность:
- Убедиться, что не пропущены регистры из документа.
- Проверить обязательные ограничения (особенно coil/discrete, enum, wo-switch).
- Проверить, что
group/условия/переводы оформлены корректно.
References
- Основные правила извлечения и нормализации:
references/register-mapping-rules.md - Контракт выходного JSON и чеклист валидации:
references/output-json-contract.md
Notes
- При спорных местах (адресация, bit fields, enum, channel_type) приоритет у правил из
references/register-mapping-rules.mdиreferences/output-json-contract.md. - Если нужен деплой/проверка шаблона на контроллере, после генерации JSON перейти к skill
wb-mqtt.