Saya memiliki broker Mosquitto dan berjalan di mesin Windows saya. Saya tidak ingat apakah saya menginstalnya dengan dukungan Soket Web (Karena saya tidak tahu apa itu, atau jika saya membutuhkannya). Tetapi melihat sekarang persyaratan saya adalah menggunakan JavaScript (Paho) untuk terhubung ke MQTT, saya ingin tahu cara mengaktifkan dukungan Web Socket untuk broker MQTT saya yang ada.
Saya mencoba mengedit mosquitto.conf
file dengan menambahkan baris-baris ini ke file
listener 9001
protocol websockets
tapi sepertinya tidak berhasil. Saya melampirkan gambar yang mungkin memberikan gambar yang lebih baik:
Saya juga tidak terlalu yakin dengan perintah tetapi tampaknya berfungsi dengan port default 1883.
Jadi pertanyaannya adalah: Bagaimana cara membuatnya bekerja?
sumber
Seperti yang dikatakan @hardlib, Anda harus mengkompilasi mosquitto dari sumber. Butuh beberapa percobaan dan kesalahan bagi kami untuk membuatnya bekerja di windows, jadi di sini beberapa ringkasan kalau-kalau itu membantu seseorang. Harap jangan ragu untuk memperbaikinya:
Prasyarat
Buat libwebsockets:
git clone https://github.com/warmcat/libwebsockets.git
dan masuk ke dir proyek6cf0a981667f0d225a9cf2d7aecfd6f50be6c1fb
)mkdir build && cd build
Bangun mosquitto
git clone https://github.com/eclipse/mosquitto.git
cd mosquitto
mkdir build && cd build
cmake -G "Visual Studio 15" ..
cmake-gui
#define snprintf sprintf_s
dari config.htimespec
struct dari pthreads.h#include <Windows.h>
ke win32 ifdef dari mosquitto_passwd.csumber
Mulai dari 1.5.1 paket windows mendukung websocket, lihat changelog https://mosquitto.org/blog/ Anda baru saja mengedit file mosquitto.conf, tentukan untuk menggunakan protokol websocket dengan menambahkan "protokol websockets" (lihat definisi di sekitar baris 145) dan akhirnya restart mosquitto jika Anda menjalankannya sebagai layanan
sumber
listener 9001
danprotocol websockets
untuk Websockt mendukung dan menggunakanlistener 1883
danprotocol mqtt
untuk memungkinkan Anda lalu lintas mqtt default mosquitto.configSaya menemukan versi kompilasi dari Mosquitto dengan WebSockets yang dibangun untuk Windows di GitHub yang mungkin berguna jika Anda tidak ingin membuat kode sendiri.
Meskipun didokumentasikan dalam bahasa Korea, itu juga mencakup presentasi PowerPoint dengan instruksi tentang cara membuatnya sendiri, jika Anda tidak ingin menggunakan binari yang telah dikompilasi sebelumnya.
sumber