完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
umqtt的cleansession貌似不对用户开发,默认打开。 |
|
相关推荐
2个回答
|
|
RyanMqtt支持配置cleanSession选项
|
|
|
|
如果使用umqtt默认的cleansession,即断线后将清除会话状态并取消所有订阅,那么该客户端将无法接收离线消息。在这种情况下,如果想要接收离线消息,则需要在重新建立连接时手动设置cleansession为False。例如:
```python import umqtt.simple as mqtt client = mqtt.MQTTClient("client_id", "broker_address", keepalive=60) def sub_callback(topic, msg): # 处理订阅到的消息 pass client.set_callback(sub_callback) client.connect(clean_session=False) # 连接并设置cleansession为False client.subscribe("my_topic") # 订阅主题 while True: client.wait_msg() ``` 这样,即使客户端在重新连接后,还是可以接收到离线期间别人发布的消息。 另一方面,如果使用umqtt的同步版本(如umqtt.robust),则无需手动设置cleansession为False,因为在异常掉线后,客户端会自动重连并恢复之前的会话状态,包括订阅和未接收的消息。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
655 浏览 0 评论
AI模型部署边缘设备的奇妙之旅:如何在边缘端部署OpenCV
2448 浏览 0 评论
tms320280021 adc采样波形,为什么adc采样频率上来波形就不好了?
1292 浏览 0 评论
1895 浏览 0 评论
1486 浏览 0 评论
74860 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 16:04 , Processed in 0.772115 second(s), Total 72, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号