1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
import paho.mqtt.client as mqtt import time
unacked_sub = []
def on_connect(client, userdata, flags, rc): print("Connection returned with result code:" + str(rc))
def on_message(client, userdata, msg): print("Received message, topic: " + msg.topic + " payload: " + str(msg.payload))
def on_disconnect(client, userdata, rc): print("Disconnection returned result: " + str(rc))
def on_subscribe(client, userdata, mid, granted_qos): unacked_sub.remove(mid)
client = mqtt.Client() client.on_connect = on_connect client.on_disconnect = on_disconnect client.on_message = on_message client.on_subscribe = on_subscribe
client.connect("127.0.0.1", 1883, 60)
client.loop_start()
result, mid = client.subscribe("demo_topic", 0) unacked_sub.append(mid)
result, mid = client.subscribe([("temperature", 0), ("humidity", 0)]) unacked_sub.append(mid)
while len(unacked_sub) != 0: time.sleep(1)
client.publish("demo_topic", payload="Hello world!") client.publish("temperature", payload="24.0") client.publish("humidity", payload="65%")
time.sleep(5) client.loop_stop() client.disconnect()
|