paho mqtt回调python中的不同类模块

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了paho mqtt回调python中的不同类模块相关的知识,希望对你有一定的参考价值。

我在另一个python模块中定义了我的回调函数。如何将另一个模块中定义的回调附加到paho.mqtt客户端回调?对于。例如,我有一个database.py,我在其中执行所有数据库操作,例如连接到数据库并将消息存储在数据库和mqttbroker.py模块中,我创建一个mqtt.client()实例并连接到代理并订阅主题并定义一些回调,如on_connect和on_disconnect。现在对于on_message mqtt回调,我在database.py模块中创建了回调函数。如何附加此回调?我有main.py(我的客户端)导入database.py和mqttbroker.py模块。

答案

定义接口并在客户端模块中调用该接口,并将数据库模块中定义的回调附加到此被调用的接口。

#mqttbroker.py
def onMessage(self, callback):
        self.client.on_message = callback
        self.client.loop_forever()

#database.py
def on_message(self,client,userdata, msg)
    #store messsages in db

#main.py
import mqqtbroker
import database

client = mqqtbroker()
client.connect(host, port, 60)
client.onMessage(database.on_message)

以上是关于paho mqtt回调python中的不同类模块的主要内容,如果未能解决你的问题,请参考以下文章

MQTT消息框架paho-mqtt与emqx安装部署与启动,python

python MQTT消息中间件mosquitto 消息获取(从MQTT服务器取消息)

5-python库之-paho mqtt通讯

Python快速上手paho-mqtt物联网

Python快速上手paho-mqtt物联网

Python快速上手paho-mqtt物联网