16 187
правок
м (→Пример подписки: убрал имя хоста из команды) |
м (Убрал имя хоста из команд) |
||
Строка 94: | Строка 94: | ||
Подпишемся на сообщения о состоянии первого реле подключённого по RS-485 релейного модуля WB-MRM2: | Подпишемся на сообщения о состоянии первого реле подключённого по RS-485 релейного модуля WB-MRM2: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
~# mosquitto_sub -t "/devices/wb-mrm2_130/controls/Relay 1/#" -v | |||
/devices/wb-mrm2_130/controls/Relay 1/meta/type switch | /devices/wb-mrm2_130/controls/Relay 1/meta/type switch | ||
/devices/wb-mrm2_130/controls/Relay 1/meta/order 1 | /devices/wb-mrm2_130/controls/Relay 1/meta/order 1 | ||
Строка 119: | Строка 119: | ||
Это делается с помощью консольной команды '''mosquitto_pub'''. Пример: | Это делается с помощью консольной команды '''mosquitto_pub'''. Пример: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
~# mosquitto_pub -t "/devices/wb-mrm2_130/controls/Relay 1/on" -m "1" | |||
</syntaxhighlight> | </syntaxhighlight> | ||
команда отправляет сообщение «1» (логическую единицу, «включить») в топик, соответствующий подключённому по RS-485 релейном модуле WM-MRM2 с адресом 130. | команда отправляет сообщение «1» (логическую единицу, «включить») в топик, соответствующий подключённому по RS-485 релейном модуле WM-MRM2 с адресом 130. | ||
Строка 129: | Строка 129: | ||
Подписаться на сообщения можно и из консоли Linux при помощи утилиты '''mosquitto_sub''' (полное описание утилиты смотрите на [http://mosquitto.org/man/mosquitto_sub-1.html http://mosquitto.org/man/mosquitto_sub-1.html]): | Подписаться на сообщения можно и из консоли Linux при помощи утилиты '''mosquitto_sub''' (полное описание утилиты смотрите на [http://mosquitto.org/man/mosquitto_sub-1.html http://mosquitto.org/man/mosquitto_sub-1.html]): | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
~# mosquitto_sub -t '/devices/wb-w1/controls/28-0115a48fcfff' -v //получить сообщения из топика устройства 1-Wire с идентификатором 28-0115a48fcfff | |||
/devices/wb-w1/controls/28-0115a48fcfff 22.75 //в этой строке и ниже — вывод утилиты, полученные сообщения | /devices/wb-w1/controls/28-0115a48fcfff 22.75 //в этой строке и ниже — вывод утилиты, полученные сообщения | ||
/devices/wb-w1/controls/28-0115a48fcfff 22.75 | /devices/wb-w1/controls/28-0115a48fcfff 22.75 | ||
Строка 138: | Строка 138: | ||
Подписаться можно не только на один топик, но и на группу топиков по метасиволу. В MQTT применяется два метасимвола: '''#''' и '''+'''. Метасимвол ''#'' означает любое количество уровней вложенных топиков. Выполним команду | Подписаться можно не только на один топик, но и на группу топиков по метасиволу. В MQTT применяется два метасимвола: '''#''' и '''+'''. Метасимвол ''#'' означает любое количество уровней вложенных топиков. Выполним команду | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
~# mosquitto_sub -t '/devices/wb-w1/#' -v | |||
/devices/wb-w1/meta/name 1-wire Thermometers | /devices/wb-w1/meta/name 1-wire Thermometers | ||
/devices/wb-w1/controls/28-0115a48fcfff 22.812 | /devices/wb-w1/controls/28-0115a48fcfff 22.812 | ||
Строка 162: | Строка 162: | ||
Например, удалим все топики, начинающиеся на <code>/devices/noolite_tx_1234/</code> | Например, удалим все топики, начинающиеся на <code>/devices/noolite_tx_1234/</code> | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
~# mqtt-delete-retained '/devices/noolite_tx_1234/#' | |||
</syntaxhighlight> | </syntaxhighlight> | ||