Promotic

Komunikace komunikační protokolem MQTT

MQTT (MQ Telemetry Transport) je jednoduchý "Internet of Things" komunikační protokol. Je založen na předávání zpráv mezi klienty prostřednictvím centrálního serveru – brokeru.
Klienti mohou být typu Publisher - zasílají na určenou topic (adresu, téma) svou zprávu. Publisher může být například snímač, čidlo nebo měřící jednotka.
Opakem je Subscriber, který se k odběru hodnot z topic adresy přihlásí a pak hodnoty odebírá (přijímá) a dále s nimi pracuje nebo je zobrazuje.
Klient může být Publisher i Subscriber současně.
 
Díky tomu, že klienti komunikují jen se zprostředkovatelem (se serverem - brokerem), nemusí klienti znát topologii sítě, ani nepotřebují vědět navzájem o svojí existenci – stačí jim pouze informace o tom, jak se spojit s brokerem.

V přihlašovací sekvenci se využívá identifikace každého klienta pomocí "ClientID" a pak volitelně i pomocí uživatelského jména "Username" a hesla "Password". Ale podpora SSL/TSL není prozatím v systému PROMOTIC implementována.

Protokol MQTT definuje tři úrovně potvrzení zpráv QoS (Quality of Service)
QoS 0 - zpráva je odeslána bez potvrzení a není zaručeno její doručení (at-most-once).
QoS 1 - zpráva je doručena alespoň jednou (at least once).
QoS 2 - každá zpráva je doručena jen jednou (exactly once).


Klient typu Publisher může zasílat data také s příznakem Retained (0/1 = nebudou/budou na brokeru data zachována) a s příznakem DUP (0/1 = žádné/další opakování zaslané zprávy)

Podle požadované úrovně šifrování komunikace, protokol MQTT předepisuje následující 3 síťové porty:
1883 - (podporováno) nešifrovaný přenos (unencrypted)
8883 - (nepodporováno) šifrovaný přenos (encrypted) SSL/TLS
8884 - (nepodporováno) šifrovaný přenos (encrypted) + certifikát klienta (client certificate) SSL/TLS + klient musí poskytnout i certifikát o autenticitě vydávaný brokerem
 
Viz: Wikipedia: Seznam čísel portů TCP a UDP používaných protokoly pro provoz síťových aplikací.

Omezení: Systém PROMOTIC prozatím nepodporuje šifrovaný přenos (podporuje pouze port 1883).

Odkazy a návody
- Download MQTT Broker: https://mosquitto.org/download
- Download MQTT testovacího klienta: http://mqttfx.jensd.de/index.php/download


Komunikace aplikace PROMOTIC s MQTT brokerem

Přihlášený klient je typu Publisher a Subscriber. Klient Subscriber se přihlásí k odběru na brokeru na definované topic adrese. Klient Publisher na tuto adresu odesílá své data, které klient Subscriber přijímá.
Pro čtení těchto údajů je vhodné použít předkonfiguraci:

Historie:
Pm9.00.03: Vytvořeno
Pm9.00.15: Opravená chyba: Aktualizace a oprava ovladače v souladu s normou MQTT5.
© MICROSYS, spol. s r.o.