前言
想简单的了解下如何通过python实现MQTT发布、订阅
提示:以下是本篇文章正文内容,下面案例可供参考
一、运行环境准备
(一)操作系统:window 7 x64专业版
(二)软件准备
Apollo服务器软件:apache-apollo-1.7.1-windows-distro.zip
java:jdk-8u77-windows-x64.exe (Apollo需要java环境,据官方说得version 1.6以上)
python:python-3.6(开发客户端用)
二、MQTT简单通信实现
1.开启Apollo代理
2.Python客户端
代码如下(示例):
import paho.mqtt.client
import time
mqtt = paho.mqtt.client
def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc)) #打印连接状态
client.subscribe("2222") #订阅2222
def on_message(client, userdata, msg):
print(msg.topic+" " + ":" + str(msg.payload)) #打印接受的消息
client_id = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))
client = mqtt.Client(client_id) # ClientId不能重复,所以使用当前时间
client.username_pw_set("admin", "password") # 必须设置,否则会返回「Connected with result code 4」
client.on_connect = on_connect
client.on_message = on_message
client.connect("127.0.0.1", 61613, 60)
client.loop_forever()
3.MQTT测试
运行Python代码,连接Apollo代理
Apollo 后台管理界面出现如下,Python客户端连接成功
打开调试助手,连接Apollo代理
调试助手发送信息,Python客户端收到信息,MQTT通信成功
总结
记录点点滴滴