Перейти к содержанию

Навигация

MQTT: различия между версиями

Метка: отменено
 
(не показано 7 промежуточных версий 2 участников)
Строка 258: Строка 258:
# Зарегистрируйтесь на http://cloudmqtt.com/
# Зарегистрируйтесь на http://cloudmqtt.com/
# Зайдите в свой аккаунт на http://cloudmqtt.com/ и посмотрите настройки: сервер, порт, логин, пароль.
# Зайдите в свой аккаунт на http://cloudmqtt.com/ и посмотрите настройки: сервер, порт, логин, пароль.
# Зайдите на контроллер и добавьте в конец файла <code>/etc/mosquitto/mosquitto.conf</code> следующие строки:
# Зайдите на контроллер и добавьте в конец файла <code>/etc/mosquitto/conf.d/20bridges.conf</code> следующие строки:
#: <syntaxhighlight lang="bash">
#: <syntaxhighlight lang="bash">
connection cloudmqtt
connection cloudmqtt
Строка 284: Строка 284:
# Зарегистрируйтесь на https://clusterfly.ru/
# Зарегистрируйтесь на https://clusterfly.ru/
# Зайдите в свой аккаунт на https://clusterfly.ru/ и выберите «Профиль» посмотрите настройки: сервер, порт, логин и сгенерируйте пароль. Для пересылки используйте сервер <code>srv1.clusterfly.ru</code>.
# Зайдите в свой аккаунт на https://clusterfly.ru/ и выберите «Профиль» посмотрите настройки: сервер, порт, логин и сгенерируйте пароль. Для пересылки используйте сервер <code>srv1.clusterfly.ru</code>.
# Зайдите на контроллер и добавьте в конец файла <code>/etc/mosquitto/mosquitto.conf</code> следующие строки:
# Зайдите на контроллер и добавьте в конец файла <code>/etc/mosquitto/conf.d/20bridges.conf</code> следующие строки:
#: <syntaxhighlight lang="bash">
#: <syntaxhighlight lang="bash">
connection clusterfly
connection clusterfly
Строка 327: Строка 327:
'''Решение:''' На контроллере ''DestinationController'' добавьте в конфиг:
'''Решение:''' На контроллере ''DestinationController'' добавьте в конфиг:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
nano /etc/mosquitto/conf.d/bridge.conf
nano /etc/mosquitto/conf.d/20bridges.conf
</syntaxhighlight>
</syntaxhighlight>
Строки:
Строки:
Строка 338: Строка 338:
restart_timeout 20
restart_timeout 20


topic /temp1/# in 2 /devices /client
topic /temp1/# in 1 /devices /client
</syntaxhighlight>
</syntaxhighlight>


Строка 347: Строка 347:
'''ВАЖНО:''' перед перезапуском желательно [[watchdog |остановить watchdog]]. В случае ошибки в конфигурационных файлах брокер не запустится и watchdog вызовет перезапуск контроллера.
'''ВАЖНО:''' перед перезапуском желательно [[watchdog |остановить watchdog]]. В случае ошибки в конфигурационных файлах брокер не запустится и watchdog вызовет перезапуск контроллера.


Рассмотрим подробнее строчку <code>topic /temp1/# in 2 /devices /client</code>
Рассмотрим подробнее строчку <code>topic /temp1/# in 1 /devices /client</code>
где:
где:
* <code>/temp1/#</code> это топик от «корня». На брокере-источнике /client/'''temp1'''.
* <code>/temp1/#</code> это топик от «корня». На брокере-источнике /client/'''temp1'''.
Строка 404: Строка 404:
sudo apt update && sudo apt install mosquitto mosquitto-clients -y
sudo apt update && sudo apt install mosquitto mosquitto-clients -y
</syntaxhighlight>
</syntaxhighlight>
#Отключите возможность анонимного входа, для этого в файле <code>/etc/mosquitto/conf.d/10listeners.conf</code> установите параметр <code>allow_anonymous false</code> (по умолчанию true).
#Отключите возможность анонимного входа, для этого:
#*Откройте файл конфигурации в редакторе
#:<syntaxhighlight lang="bash">
sudo nano /etc/mosquitto/mosquitto.conf
</syntaxhighlight>
#*Добавьте в конец файла строки:
#:<syntaxhighlight lang="bash">
#:<syntaxhighlight lang="bash">
nano /etc/mosquitto/conf.d/10listeners.conf
#Turn on port listening
listener 1883
#Disable anonomous login:
allow_anonymous false
#Password file:
password_file /etc/mosquitto/mosquitto.pwd
</syntaxhighlight>
</syntaxhighlight>
#Создайте пароль для пользователя, в примере использован пользователь <code>test</code> с паролем <code>wbpassword</code>:
#Создайте пароль для пользователя, в примере использован пользователь <code>test</code> с паролем <code>wbpassword</code>:
Строка 412: Строка 422:
sudo mosquitto_passwd -c /etc/mosquitto/mosquitto.pwd test
sudo mosquitto_passwd -c /etc/mosquitto/mosquitto.pwd test
</syntaxhighlight>
</syntaxhighlight>
#Введите пароль дважды и запомните его.
#Введите пароль дважды и запомните его, он вам пригодится ниже.
#В файле  <code>/etc/mosquitto/acl/default.conf</code> добавьте следующую запись:
#:<syntaxhighlight lang="bash">
user test
topic readwrite #
topic readwrite $SYS/#
</syntaxhighlight>
#:где, test — имя пользователя.
#:Открыть файл для редактирования:
#:<syntaxhighlight lang="bash">
nano  /etc/mosquitto/acl/default.conf
</syntaxhighlight>
#Перезапустите <code>mosquitto</code> и проверьте его состояние:
#Перезапустите <code>mosquitto</code> и проверьте его состояние:
#:<syntaxhighlight lang="bash">
#:<syntaxhighlight lang="bash">
Строка 445: Строка 444:
nano /etc/mosquitto/conf.d/20bridges.conf
nano /etc/mosquitto/conf.d/20bridges.conf
</syntaxhighlight>
</syntaxhighlight>
# Вставьте в него строки, где <code>10.0.0.105</code> — адрес брокера:
# Вставьте в конец файла строки, где <code>10.0.0.105</code> — адрес брокера:
#:<syntaxhighlight lang="bash">
#:<syntaxhighlight lang="bash">
connection bridge1
connection bridge1
wb_editors
890

правок