А можно как-нибудь на уровне настройки сериальных устройств разрешить давать всем модулям и каждому входу и выходу (а также 1-wire устройствам) человеческие имена. Пожалуйста! А то у меня назначение каждого реле написано на бумажке, разве это нормально? Я не прошу по-русски, ну хотя бы кодовое обозначение латинскими буквами, как мы делаем с устройствами zigbee. Чтобы в скриптах по этим кодам к устройствам обращаться.
(без создания вручную устройств которые бы дублировали и так далее)
“Опишите ваш юз кейс”? Да старый я стал и уже не помню, в какой комнате какой датчик, когда пишу автоматизацию, и код получается нечитаемый. (но я не знаю, нужно ли мне, чтобы в mqtt очередях были понятные названия.)
Если уж вы пишете скрипты, то самый простой вариант - один раз присвоить переменным с понятными вам именами идентификаторы топиков. Тогда в правилах вы сможете обращаться к этим переменным, и бумажка не понадобится.
var gostinnaya_t = 'wb-w1/28-00000bd0b77b';
whenChanged: gostinnaya_t,
Если скрипты у вас в нескольких файлах, то сделайте так: global.__proto__.gostinnaya_t = 'wb-w1/28-00000bd0b77b';
тогда эти переменные будут доступны во всех файлах whenChanged: gostinnaya_t,
но вы должны позаботится, чтобы имена переменных были уникальны.
Кто-нибудь на деле это пробовал? Боюсь такой воркараунд с proto будет при перезагрузке так же подглючивать, как например скрипт wb-engine, из-за порядка запуска модулей…
Это самый базовый функционал, и он не может подглючивать. Если вам так спокойнее, то скажу, что на системах, в которых я лично принимал участие, это используется.
По порядку загрузки тоже все просто: файлы обрабатываются в алфавитном порядке. Разместите эти переменные в файл с именем “01_xxx.js”, а остальные файлы назовите “02_xxx.js”… и можете не сомневаться в доступности переменной. Присваивание переменной - самая простая и быстрая операция, переменная станет доступной сразу после объявления.
Да, я так использую программный модуль правил, можете использовать тоже как шаблон, у меня там много всего.
На счёт описания в настройках модуля… Как ни странно, но моя практика показывает, что это было бы не удобно. Когда всё записано в одном файле - я наглядно вижу все модули и каналы, вижу все резервы, и легко переношу их по необходимости. В настройках модуля же придется открывать каждую вкладку, переходить от модуля к модулю и т.п.
Да, я так использую программный модуль правил, можете использовать тоже как шаблон, у меня там много всего.
Да, интересный файлик, спасибо. Может, я просто буду реквайрить json, в который перепишу все с бумажки
ну файл wb-mqtt-serial.conf тоже единое место, где можно было бы добавить поля “алиас” для использования в объекте dev.
И для отображения на странице “Devices”! Интерфейс без использования дашбордов стал бы гораздо читаемей. И код.
Да, пожалуй, неплохо было бы, чтобы и в mqtt это имя шло. Но могу представить, что имена этих coils (или как они правильно называются) где-то захардкодены (в шаблонах устройств?) и их все придется переписать с учетом возможности кастомных имен, и неохота этим заниматься. Если бы я у вас работал в самом начале на заре wirenboard, я бы не позволил этим K5 и 28-012273799689 существовать нигде, где человек смотрит
Это далеко не единственный сервис который создает топики.
Это (а еще произвольная/многуровневая иерархия, когда можно часть каналов устройства привязать у объекту типа “комната” и иметь два дерева - по устройствам и логическое) давно в планах есть.
А “устройства” - они и не предназанчены для человека. Они для наладчика. Для пользователя - виджеты.
с философской точки зрения реле mini и комнатные датчики находятся прямо около того, чем они управляют, там алиасов устройств достаточно, но блоки реле и аналоговых/дискретных входов находятся в щитке, куда стекаются провода со всего дома, и легко запутаться
тогда home assistantу останется только телевизорами управлять, что-ли?
а если у наладчика начальная стадия деменции, потому что он же и пользователь, а все, кого он может нанять, еще тупее его, путают полярность и впендюривают “блоки управления замком” там, где они не нужны… да еще денег дерут и лапшу на уши вешают. извините за философию.
да он бы назывался “fl1_livingroom_floor_heat”, например. я так устройства зигби алиасю.
но, например, реле зигби в выключателе на две комнаты называется fl1_toilet_boiler_light, и там уж и правда state left это toilet, а state_right это бойлерная, ну все равно легче же