test1.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import paho_mqtt3c as mqttv3, time, random
  2. print dir(mqttv3)
  3. host = "localhost"
  4. clientid = "myclientid"
  5. noclients = 4
  6. def deliveryComplete(context, msgid):
  7. print "deliveryComplete", msgid
  8. def connectionLost(context, cause):
  9. print "connectionLost"
  10. print "rc from reconnect is", mqttv3.connect(self.client)
  11. def messageArrived(context, topicName, message):
  12. print "clientid", context
  13. print "topicName", topicName
  14. print "message", message
  15. return 1
  16. print messageArrived
  17. myclientid = None
  18. clients = []
  19. for i in range(noclients):
  20. myclientid = clientid+str(i)
  21. rc, client = mqttv3.create("tcp://"+host+":1883", myclientid)
  22. print "client is", hex(client)
  23. print "rc from create is", rc
  24. print "rc from setcallbacks is", mqttv3.setcallbacks(client, client, connectionLost, messageArrived, deliveryComplete)
  25. print "client is", hex(client)
  26. print "rc from connect is", mqttv3.connect(client, {})
  27. clients.append(client)
  28. for client in clients:
  29. print "rc from subscribe is", mqttv3.subscribe(client, "$SYS/#")
  30. for client in clients:
  31. print "rc from publish is", mqttv3.publish(client, "a topic", "a message")
  32. print "rc from publish is", mqttv3.publish(client, "a topic", "a message", 1)
  33. print "rc from publish is", mqttv3.publish(client, "a topic", "a message", 2)
  34. print "about to sleep"
  35. time.sleep(10)
  36. print "finished sleeping"
  37. for client in clients:
  38. print "rc from isConnected is", mqttv3.isConnected(client)
  39. print "rc from disconnect is", mqttv3.disconnect(client)
  40. mqttv3.destroy(client)