python - 接收时的 MQTT 消息计数器
问题描述
我尝试搜索与我的问题相关的主题,我认为这是一个很常见的问题。我想计算在“on_message”上收到消息的次数。全局或局部计数变量不起作用,如何继续计数收到的消息?
这是我的代码片段,我的计数不起作用,因为它每次都会重置。
定义
def on_message(client, userdata, message):
ts_data = str(message.payload.decode("utf-8"))
count=count+1
print(count)
if __name__ == '__main__':
client = mqtt.Client()
client.on_message=on_message
你能帮忙吗?
谢谢亲切的问候阿伦
解决方案
我不确定您所说的以下内容是什么意思:
全局或局部计数变量不起作用,
以下应该可以正常工作:
count = 0
def on_message(client, userdata, message):
global count
ts_data = str(message.payload.decode("utf-8"))
count=count+1
print(count)
if __name__ == '__main__':
client = mqtt.Client()
client.on_message=on_message