Custom: Конфигурация
Конфигурация HOMEd Custom хранится в файле /etc/homed/homed-custom.conf. Пример файла конфигурации:
[log]
enabled=false
timestamps=true
file=/var/log/homed.log
[mqtt]
host=localhost
port=1883
username=custom
password=secret
prefix=homed
instance=
names=false
[homeassistant]
enabled=false
prefix=homeassistant
status=homeassistant/status
[device]
database=/opt/homed-custom/database.json
properties=/opt/homed-custom/properties.json
expose=/usr/share/homed-common/expose.json
При изменении содержимого файла конфигурации сервис перезапускается автоматически.
Параметры
[log]
| Параметр | Описание |
|---|---|
enabled |
включение/выключение записи логов в файл |
timestamps |
включение/выключение меток времени при выводе лога в stdout |
file |
путь к файлу лога |
[mqtt]
| Параметр | Описание |
|---|---|
host |
адрес брокера |
port |
порт брокера |
username |
имя пользователя для авторизации на брокере (может быть пустым) |
password |
пароль для авторизации на брокере (может быть пустым) |
prefix |
корневой топик |
interval |
интервал публикации топика доступности в секундах |
instance |
уникальное имя сервиса (может быть пустым), подробности ниже |
names |
использование имен устройств вместо идентификаторов в MQTT-топиках |
[homeassistant]
| Параметр | Описание |
|---|---|
enabled |
включение/выключение функции Home Assistant MQTT Discovery |
prefix |
корневой топик для Home Assistant MQTT Discovery |
status |
топик для отслеживания состояния Home Assistant |
[device]
| Параметр | Описание |
|---|---|
database |
путь к файлу базы данных устройств |
properties |
путь к файлу, в котором будут храниться актуальные (последние известные) состояния устройств |
expose |
путь к файлу с опциями типовых способностей устройств |
Кластеризация
HOMEd Custom позволяет использовать несколько "инстансов" сервиса внутри одного корневого топика, это нужно, например, для централизованного управления всеми "инстансами" из одного веб-интерфейса или для организации перекрестных автоматизаций между "инстансами".
Для корректной работы этих функций необходимо, чтобы у каждого "инстанса" было свое уникальное имя, при этом имя одного из "инстансов" может быть пустым. Остальные сервисы устроены так, что смена уникальных имен для "инстансов" не должна влиять на их работу, однако не стоит забывать, что некоторые MQTT-топики сервисов публикуются с флагом retain, поэтому переименование "инстансов" без ручной зачистки таких топиков может привести к нежелательным последствиям.
Уникальное имя "инстанса" может быть строкой, состоящей из любых символов, за исключением спец-символов, используемых в MQTT-топиках: #, + и /.
Тем не менее, во избежание потенциальных проблем, рекомендуется использовать строки без пробелов, состоящие только из латинских букв и цифр, например: guestHouse.
Что дальше?
После настройки HOMEd Custom можно приступать к добавлению устройств, при помощи веб-интерфейса или вручную.