Swi*_*ary 4 python subscribe mqtt paho
import paho.mqtt.client as mqtt
def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc))
client.subscribe("/leds/pi")
def on_message(client, userdata, msg):
if msg.topic == '/leds/pi':
print(msg.topic+" "+str(msg.payload))
client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.connect("localhost", 1883, 60)
client.loop_start()
Run Code Online (Sandbox Code Playgroud)
我使用这个基本代码来订阅主题并接收消息。每当收到消息时就会调用 on_message 函数。我需要能够访问函数外部的 msg.payload 并将其存储到变量中。只要收到消息,变量中的值就应该更新。我尝试将 msg.payload 存储到函数内的全局变量并访问它,但是,这给出了一个错误,指出该变量未定义。请帮忙。
我需要能够访问函数外部的 msg.payload 并将 其存储到变量中。
您需要一个全局变量,例如:
myGlobalMessagePayload = '' #HERE!
def on_message(client, userdata, msg):
global myGlobalMessagePayload
if msg.topic == '/leds/pi':
myGlobalMessagePayload = msg.payload #HERE!
print(msg.topic+" "+str(msg.payload))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6413 次 |
| 最近记录: |