"""
python 收发 mqtt 消息
"""
import json
import paho.mqtt.client as mqtt
# 该函数为连接 mqtt server 成功时的回调函数,可以再这个函数中发送消息
def on_connect(client, userdata, rc, *extra_params):
print('Connected with result code ' + str(rc))
print('connected')
# 为了测试收发消息,需要先订阅一个主题用来接收我发送的消息
client.subscribe(f'demo', qos=0)
data = {
'code': 0,
'message': 'hello'
}
# 发送消息. payload 为消息负载,发送的消息格式一般为 json。所以这里我们使用 json.dumps() 将数据转成 json
client.publish('demo',
payload=json.dumps(data), qos=0)
print("send message finished")
# 该函数为接受到 mqtt 消息时的回调函数
def on_message(client, userdata, msg):
print(f'Incoming message\nTopic: {msg.topic}\nMessage: {str(msg.payload)}')
if __name__ == '__main__':
# 创建 mqtt 客户端实例
client = mqtt.Client()
# 设置用户名及密码
client.username_pw_set('device_declare', '123456')
client.on_connect = on_connect
client.on_message = on_message
# 连接 mqtt server
client.connect('192.168.1.151', port=53883)
client.loop_forever()
没有合适的资源?快使用搜索试试~ 我知道了~
Python 连接 MQTT,接受、发送消息示例
共1个文件
py:1个
需积分: 0 14 下载量 103 浏览量
2023-07-26
23:11:39
上传
评论
收藏 979B RAR 举报
温馨提示
要在Python中连接MQTT,并进行消息的接收和发送,可以按照以下步骤进行操作: 导入所需的库: 使用paho.mqtt.client库来实现MQTT客户端功能。 连接到MQTT代理服务器: 创建一个MQTT客户端对象,使用client = mqtt.Client()。 设置连接参数,如MQTT代理服务器的地址、端口号等。 调用client.connect()方法连接到MQTT代理服务器。 订阅主题并接收消息: 使用client.subscribe()方法订阅一个或多个主题。 定义一个回调函数,处理接收到的消息。可以使用on_message方法注册该回调函数。 在回调函数中,处理接收到的消息并执行相应的操作。 发布消息: 使用client.publish()方法发布消息到指定的主题。 可以在代码中手动指定消息内容,或者根据需要从其他数据源获取消息。 处理连接和消息循环: 调用client.loop_start()方法启动一个线程,用于处理与MQTT代理服务器的通信。 可以添加额外的逻辑,例如定时发布消息、处理异常情况等。 断开连接: 在程序结束之前,通过调用client
资源推荐
资源详情
资源评论
收起资源包目录
Python 连接 MQTT,接受、发送消息示例.rar (1个子文件)
Python 连接 MQTT,接受、发送消息示例
demo-mqtt.py 1KB
共 1 条
- 1
资源评论
童小纯
- 粉丝: 3w+
- 资源: 289
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- WANGSHANGYINHANG-4.2.9.031406-android
- docker&docker-compose离线安装包(centos)
- 混淆矩阵(Confusion Matrix)是机器学习领域中一种常用的可视化工具4.txt
- 滑动窗口是一种流量控制技术,用于在数据传输过程中进行拥塞控制和流量调节4.txt
- Nacos如何支持服务发现和注册-基于词频统计的分析.txt
- 基于BP神经网络的PID控制算法-MATLAB实现
- :基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算
- yolo人脸目标检测数据集
- 第九次作业(XY图,XY图显示,三维曲面,数字波形图)
- Unity3D版本游戏源码解压密码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功