Protokol MQTT
- MQTT je otevřený, jednoduchý a nenáročný komunikační protokol pro posílání zpráv mezi mnoha klienty připojenými k centrálnímu brokeru MQTT.
- Každá zpráva se skládá ze dvou částí: topicu a payloadu
- Topic popisuje obsah zprávy a identifikuje ji
- Název topicu má adresářovou strukturu: jednotlivé úrovně jsou oddělené symbolem
/- Topic může být
bedroom/temperature,kitchen/light/setatd.
- Topic může být
- Server MQTT se nazývá broker a klienti mohou publikovat zprávy a odebírat topicy
- Úkolem brokeru MQTT je doručovat zprávy od vydavatelů k odběratelům
- Při odebírání topicu MQTT můžete použít dva takzvané zástupné znaky (wildcards)
- Zástupný znak
+přihlásí odběr všech topiců v zadaném topicu- např.
+/light/setpřihlásí odběrbedroom/light/set,kitchen/light/setatd.
- např.
- Zástupný znak
#přihlásí odběr všech podřízených topiců zadaného topicu-
např.
kitchen/#přihlásí odběrkitchen/light/set,kitchen/light/get,kitchen/temperature/getatd.pozorZástupný znak # lze použít pouze na konci názvu topicu
-
- Zástupný znak
tip
Přečtěte si více o topicech MQTT a o tom, jak je používat.
Broker MQTT Mosquitto
Sada IoT Kit používá open-source broker MQTT Mosquitto. Všechny zprávy procházejí přes broker MQTT, takže systém IoT Kit lze dál rozšiřovat.
Když připojíte Radio Dongle, ke kterému je připojený vzdálený uzel, zobrazíte všechny příchozí zprávy pomocí balíčku mosquitto-cli tímto příkazem:
poznámka
Jak nainstalovat broker MQTT Mosquitto, najdete na odkazu výše, případně můžete spustit vlastní server na Raspberry Pi.
mosquitto_sub -t "#" -v
Odpověď:
pi@hub:~ $ mosquitto_sub -t "#" -v
node/836d19821664/thermometer/0:1/temperature 24.69
node/836d19821664/thermometer/0:1/temperature 24.94
node/836d19821664/push-button/-/event-count 5
informace
V aplikaci HARDWARIO Playground můžete spravovat rádiová zařízení, číst a odesílat zprávy MQTT a zpracovávat je v Node-RED.