wb_editors
893
правки
PeteK (обсуждение | вклад) (Добавил краткую информацию про подтопик /meta/error) |
Brainroot (обсуждение | вклад) (Дополняю) |
||
Строка 240: | Строка 240: | ||
</translate> | </translate> | ||
'''Задача:''' настроить пересылку топика MQTT на другой контроллер. | |||
Есть два контроллера в одной сети, адреса: | |||
;10.0.0.40 | |||
:На этот контроллер "забираем" топик. Обозначаем его как "40" | |||
;10.0.0.70 | |||
:С этого контроллера, он источник. Назовем его "70" | |||
На '''70''' есть /client/temp1 | |||
Его нужно видеть на '''40''' в /devices/temp1 | |||
Решается двумя способами, можно с '''70''' публиковать на '''40''' или с '''40''' подписаться на топик '''70''' и забирать изменения. От выбора стратегии зависит на каком контроллере будем проводить настройки. | |||
Будем настраивать '''40''' | |||
'''Решение:''' | |||
На контроллере “40” добавляем в конфиг: | |||
<syntaxhighlight lang="bash"> | |||
mcedit /etc/mosquitto/conf.d/bridge.conf | |||
</syntaxhighlight> | |||
Следующее | |||
<syntaxhighlight lang="bash"> | |||
connection wb_40 | |||
address 10.0.0.70 | |||
notifications true | |||
notification_topic /client/wb_40/bridge_status | |||
keepalive_interval 20 | |||
restart_timeout 20 | |||
topic /temp1/# in 2 /devices /client | |||
</syntaxhighlight> | |||
Перезапускаем на нем же mosquitto: | |||
<syntaxhighlight lang="bash"> | |||
systemctl restart mosquitto; systemctl status mosquitto | |||
</syntaxhighlight> | |||
'''Важно!''' перед перезапуском желательно [[watchdog |остановить watchdog]]. В случае ошибки в конфигах брокер не запустится и watchdog вызовет перезапуск контроллера. | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="bash"> | |||
</syntaxhighlight> |