Salta ai contenuti

MQTT

MQTT è disponibile scegliendo il protocollo mqtt su una richiesta WebSocket.

Una scheda MQTT: il topic, la QoS, l’opzione Conserva, la sottoscrizione alla connessione, l’identificativo client, il keepalive, il testamento (LWT) e il payload pubblicato

CampoRuolo
URLL’indirizzo del broker (mqtt://, mqtts:// oppure WebSocket)
TopicIl topic, ospitato dal campo Evento
MessaggioIl payload pubblicato
QoS0, 1 o 2 — usata alla pubblicazione e alla sottoscrizione
Conserva (retain)Contrassegna il messaggio come trattenuto dal broker
Identificativo clientRisolto da Handlebars; generato automaticamente se lasciato vuoto
Utente / PasswordCredenziali del broker; la password accetta un valore di tipo Segreto
KeepaliveIn secondi
Sottoscrivi il topicAttivo per impostazione predefinita: alla connessione, Restorm sottoscrive il topic della richiesta

Il topic accetta le {{variables}}capteurs/{{site}}/{{capteurId}} è un topic perfettamente valido.

Quattro campi dichiarano il messaggio che il broker pubblicherà se il client sparisce all’improvviso: topic, payload, QoS e ritenzione del testamento.

È esattamente ciò che serve per verificare il comportamento del proprio sistema di fronte a una disconnessione sporca: si configura un testamento, si interrompe la connessione e si verifica che il sottoscrittore reagisca.

Il client MQTT si riconnette automaticamente, con un massimo di dieci tentativi.

Connessione MQTT (che sottoscrive il topic della richiesta ed emette un evento per ogni messaggio ricevuto), Pubblicazione MQTT (pubblica, con la QoS e la ritenzione della richiesta) e Chiusura connessione MQTT. Si veda Connessioni e flussi.

Restorm sa ospitare un broker MQTT locale: un broker per porta, raggiungibile in TCP grezzo e tramite un gateway MQTT-su-WebSocket. Si veda Simulare WebSocket, Socket.IO e MQTT.

Un documento AsyncAPI i cui canali usano il protocollo mqtt produce direttamente richieste MQTT (una per canale, in pubblicazione e in sottoscrizione), con payload di esempio costruiti a partire dallo schema dei messaggi. Si veda Importare AsyncAPI.