Mosquitto: WebSockets
Jak połączyć się z MQTT za pomocą WebSockets
👋 Witamy w dokumentacji Stackhero!
Stackhero oferuje gotowe do użycia rozwiązanie Mosquitto MQTT cloud, które zapewnia wiele korzyści, w tym:
- Nieograniczoną wymianę i transfer wiadomości.
- Nieograniczoną autoryzację urządzeń za pomocą zewnętrznego API.
- Zaawansowane ACL na tematy, użytkowników i działania.
- Dostosowywalną nazwę domeny zabezpieczoną za pomocą HTTPS (na przykład, https://mqtt.twoja-firma.com).
- Łatwe aktualizacje za pomocą jednego kliknięcia.
- Optymalną wydajność i solidne bezpieczeństwo dzięki prywatnej i dedykowanej VM.
Oszczędzaj czas i upraszczaj swoje życie: wystarczy 5 minut, aby wypróbować rozwiązanie Mosquitto MQTT cloud hosting Stackhero!
Masz dwie główne opcje połączenia z Mosquitto: natywny protokół MQTT lub WebSockets.
Protokół MQTT jest powszechnie ceniony za swoją lekkość, co czyni go szczególnie odpowiednim dla urządzeń IoT oraz środowisk o ograniczonych zasobach. Jednak większość przeglądarek internetowych nie obsługuje bezpośrednich połączeń MQTT. Właśnie tutaj przydają się WebSockets, ponieważ umożliwiają uruchomienie MQTT przez połączenie WebSocket, co pozwala na komunikację z serwerami MQTT z poziomu aplikacji przeglądarkowych.
Aby rozpocząć korzystanie z WebSockets, wystarczy włączyć opcję "WebSocket support" w panelu Stackhero. Po aktywacji tej funkcji należy skierować swojego klienta na adres WebSocket: wss://<XXXXXX>.stackhero-network.com:443. Ten adres zastępuje standardowy, bezpieczny adres MQTT, który wygląda następująco: mqtts://<XXXXXX>.stackhero-network.com.
Wybór biblioteki MQTT
Jeśli Twoja aplikacja jest napisana w JavaScript, warto rozważyć bibliotekę MQTT.js. To elastyczne rozwiązanie, które działa zarówno w środowisku Node.js, jak i bezpośrednio w przeglądarce. Dokumentacja oraz kod źródłowy biblioteki są dostępne tutaj: https://github.com/mqttjs/MQTT.js.
Przykład: Połączenie z MQTT przez WebSockets
Praktyczny przykład pokazujący, jak połączyć aplikację webową z serwerem MQTT za pomocą WebSockets, znajdziesz w tym repozytorium: https://github.com/stackhero-io/mqttWebSocketGettingStarted.
Testując ten przykład, pamiętaj o zaktualizowaniu pliku src/index.html o własny url, username oraz password do Twojego serwera.
Przykład MQTT WebSocket
Przed rozpoczęciem pamiętaj o aktywacji wsparcia WebSocket w panelu Stackhero.