Berikut adalah cara untuk menginstal Mosquitto MQTT Broker di Windows.
Download aplikas Mosquitto dari https://mosquitto.org/download/ dengan pilihan untuk sistem operasi Windows sebagai berikut :

Gambar di atas memperlihatkan versi aplikasi Mosquitto untuk Windows 64 bit dan 32 bit, tergantung dari sistem operasi yang kita gunakan. Cara mudah untuk melihat berapa bit versi Windows yang kita gunakan, cukup jalankan aplikasi dxdiag.

Pada bagian System Information tertulis Operating System : Windows 10 Pro 64-bit , artinya sistem operasi Windows yang kita gunakan adalah versi 64-bit, pilihlah untuk men-download aplikasi yang 64 bit yakni mosquitto-2.0.15-install-windows-x64.exe.
Setelah berhasil di download, install Mosquitto dengan menjalankan file mosquitto-2.0.15-install-windows-x64.exe.





Menjalankan aplikasi mosquito broker
Dari command prompt masuklah ke folder mosquito di folder “C:\Program Files\mosquitto”, jalankan aplikasi mosquito seperti gambar berikut.

Dari gambar di atas terlihat mosquito sudah running dan sedang menunggu client terhubung pada port 1883. Dengan demikian kita sudah dapat memulai koneksi ke mosquito melalui perangkat lain, misalnya dengan komputer, ESP8266 Wemos, ESP32 dll.
Install Python
Download aplikasi bahasa pemrograman Python pada site https://www.python.org/downloads/, selanjutnya install. Setelah itu install library paho-mqtt pada Python dengan mengetik perintah : pip3 install paho-mqtt

Kode Python MQTT Publish
#contoh kode MQTT publish
#nama file : kirimdata.py
import random
import time
from paho.mqtt import client as mqtt_client
broker = ‘localhost’ #bisa diganti menjadi nama server
port = 1883
topic = “datakita/templembab”
# generate client ID with pub prefix randomly
client_id = f’python-mqtt-{random.randint(0, 1000)}’
username = ‘uma123’
password = ‘umasaja’
def connect_mqtt():
def on_connect(client, userdata, flags, rc):
if rc == 0:
print(“Terhubung ke MQTT Broker!”)
else:
print(“Gagal menghubungi MQTT Broker, kode error %d\n”, rc)
client = mqtt_client.Client(client_id)
client.username_pw_set(username, password)
client.on_connect = on_connect
client.connect(broker, port)
return client
def publish(client):
msg_count = 0
while True:
time.sleep(1)
msg = f”Pesan {msg_count} -> Temp.: 35*C, Kelembaban : 80%”
result = client.publish(topic, msg)
# result: [0, 1]
status = result[0]
if status == 0:
print(msg)
else:
print(f”Gagal mengirim pesan ke topic {topic}”)
msg_count += 1
def run():
client = connect_mqtt()
client.loop_start()
publish(client)
if __name__ == ‘__main__’:
run()

Kode Python MQTT Subscribe
#contoh kode MQTT subscribe
#nama file : terimadata.py
import random
from paho.mqtt import client as mqtt_client
broker = ‘localhost’
port = 1883
topic = “datakita/templembab”
# generate client ID with pub prefix randomly
client_id = f’python-mqtt-{random.randint(0, 100)}’
username = ‘uma123’
password = ‘umasaja’
def connect_mqtt() -> mqtt_client:
def on_connect(client, userdata, flags, rc):
if rc == 0:
print(“Terhubung ke MQTT Broker!”)
else:
print(“Gagal menghubungi MQTT Broker, kode error %d\n”, rc)
client = mqtt_client.Client(client_id)
client.username_pw_set(username, password)
client.on_connect = on_connect
client.connect(broker, port)
return client
def subscribe(client: mqtt_client):
def on_message(client, userdata, msg):
print(f”Diterima `{msg.payload.decode()}`”)
client.subscribe(topic)
client.on_message = on_message
def run():
client = connect_mqtt()
subscribe(client)
client.loop_forever()
if __name__ == ‘__main__’:
run()

Sekedar mengingatkan bahwa MQTT broker di atas sedang berjalan di komputer lokal atau localhost, bila MQTT broker dijalankan pada server hosting misalnya kolibriindonesia.com maka inisialisasi variable ‘broker’ pada kode Python harus diubah dari ‘localhost’ menjadi ‘kolibriindonesia.com’.
Demikian, mudah-mudahan bermanfaat. Terimakasih.