import paho.mqtt.client as mqtt
def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc))
client.subscribe("watchdog/#")
def on_message(client, userdata, msg):
message = str(msg.payload)
print(msg.topic+" "+message)
client = mqtt.Client()
client.username_pw_set('XXXX', password='XXXXXXX')
client.on_connect = on_connect
client.on_message = on_message
client.connect("XXXX", XXXXX, 60)
client.loop_forever()
有效负载始终具有以下文本:
b'XXX'
XXX是消息,但b''部分始终显示。 一旦我在现成的客户端打开相同的消息,消息很好......所以我认为问题是在代码中,但我找不到。
任何帮助或指示?
谢谢!
答案 0 :(得分:1)
正如Moses Koledoye所说,b是字节 - 这意味着你要打印的是一组字节的字符串版本。如果你将str(msg.payload)改为简单的msg.payload,你将获得不同的输出。
但是你还没有谈到消息有效负载是什么,所以你可能仍然会因为打印msg.payload而感到胡言乱语。例如,如果发送的消息实际上是一串字节......