Przejdź do głównej zawartości

MQTT

MQTT jest dostępny po wybraniu protokołu mqtt w żądaniu WebSocket.

Zakładka MQTT: temat, QoS, opcja Retain, subskrypcja przy połączeniu, identyfikator klienta, keepalive, ostatnia wola (LWT) oraz publikowany ładunek

PoleRola
URLAdres brokera (mqtt://, mqtts:// lub WebSocket)
TematTemat, przenoszony przez pole Zdarzenie
WiadomośćPublikowany ładunek
QoS0, 1 lub 2 — używana zarówno przy publikacji, jak i przy subskrypcji
RetainOznacza wiadomość jako zachowaną przez brokera
Identyfikator klientaRozwiązywany przez Handlebars; generowany automatycznie, jeśli pozostanie pusty
Użytkownik / HasłoDane uwierzytelniające brokera; hasło przyjmuje wartość typu Sekret
KeepaliveW sekundach
Subskrybuj przy połączeniuWłączone domyślnie: po nawiązaniu połączenia Restorm subskrybuje temat danego żądania

Temat przyjmuje {{variables}}capteurs/{{site}}/{{capteurId}} jest całkowicie poprawnym tematem.

Cztery pola deklarują wiadomość, którą broker opublikuje, jeśli klient zniknie w sposób nagły: temat, ładunek, QoS i retencja ostatniej woli.

To dokładnie to, czego potrzeba, aby przetestować zachowanie systemu wobec nieprawidłowego rozłączenia: wystarczy skonfigurować ostatnią wolę, przerwać połączenie i sprawdzić, czy subskrybent reaguje.

Klient MQTT łączy się ponownie automatycznie, z limitem dziesięciu prób.

Połączenie MQTT (subskrybuje temat żądania i emituje jedno zdarzenie na każdą odebraną wiadomość), Publikacja MQTT (publikuje, z QoS i retencją pobranymi z żądania) oraz Zamknięcie połączenia MQTT. Zob. Połączenia i strumienie.

Restorm potrafi hostować lokalny broker MQTT: jeden broker na port, dostępny przez surowy TCP oraz przez bramę MQTT-na-WebSocket. Zob. Symulowanie WebSocket, Socket.IO i MQTT.

Dokument AsyncAPI, którego kanały używają protokołu mqtt, tworzy bezpośrednio żądania MQTT (po jednym na kanał, w trybie publikacji i subskrypcji), wraz z przykładowymi ładunkami zbudowanymi na podstawie schematu wiadomości. Zob. Import AsyncAPI.