Node-RED: Connessione a MQTT tramite WebSocket

Questa documentazione fa parte della guida Server MQTT. Consulta la guida completa qui: Come collegare Node-RED al server Mosquitto MQTT.

Benvenuti nella documentazione di Stackhero

Stackhero offre un ambiente Node-RED cloud completamente gestito, progettato per permettervi di creare workflow in modo rapido:

  • Server MQTT integrato (Mosquitto) per un'integrazione IoT senza interruzioni.
  • Accesso completo all'interfaccia di amministrazione Node-RED per la gestione dei flow e delle impostazioni.
  • Node-RED Dashboard incluso per la visualizzazione in tempo reale.
  • Server email SMTP dedicato incluso, senza limiti di invio.
  • Aggiornamenti con un clic per mantenere sempre aggiornata la vostra istanza.
  • Nomi di dominio personalizzati con HTTPS automatico: ad esempio, https://node-red.your-company.com.
  • Elevata performance e massima sicurezza grazie a un'infrastruttura privata e dedicata.

Potete avere una istanza Node-RED cloud hosting sicura e pronta per la produzione in circa 5 minuti. Stackhero si occupa di installazione, aggiornamenti e infrastruttura, così potete concentrarvi sulla creazione delle vostre automazioni.

Ha la possibilità di collegarsi al server Mosquitto MQTT sia tramite il protocollo MQTT sia tramite WebSocket.

Sebbene il protocollo MQTT sia leggero e quindi ideale per i dispositivi IoT, non è supportato nativamente dai browser web. Se desidera interagire con il server MQTT da un browser, dovrà utilizzare i WebSocket. Questo approccio consente di incapsulare il traffico MQTT all'interno del protocollo WebSocket e funziona perfettamente con i servizi Stackhero.

Per abilitare la connettività WebSocket, attivi semplicemente l'opzione "WebSocket Support" nella dashboard di Stackhero. Una volta abilitata, può configurare il suo client per utilizzare l'URL WebSocket: wss://<XXXXXX>.stackhero-network.com:443/mqtt. Si assicuri di sostituire il valore predefinito mqtts://<XXXXXX>.stackhero-network.com con questo URL WebSocket per le connessioni da browser.

Per lo sviluppo, la libreria "MQTT.js" può risultare particolarmente utile. Si tratta di una libreria JavaScript robusta, compatibile sia con Node.js che con gli ambienti browser. Può trovare maggiori informazioni consultando il suo repository ufficiale.

Se desidera un esempio pratico di come collegarsi dal browser al server MQTT tramite WebSocket, può fare riferimento a questo repository: https://github.com/stackhero-io/mqttWebSocketGettingStarted. Può modificare liberamente il file src/index.html inserendo l'url, lo username e la password del suo server per adattarlo alla sua configurazione.

Esempio MQTT WebSocketEsempio MQTT WebSocket

Prima di provare questa configurazione, si assicuri che il supporto WebSocket sia abilitato nella dashboard di Stackhero. Questo garantisce il corretto funzionamento delle connessioni da browser.