为什么 paho-mqtt 忽略我的订阅
Why is paho-mqtt ignoring my subscription
我正在使用以下代码
client.loop_start()
client.subscribe("indentify/+")
client.subscribe("indentify/#")
client.subscribe("status/#")
#client.subscribe("#")
client.on_message=on_message
当我发送 identify/xxx 到服务器时,它被忽略了。如果我取消注释最后一个订阅行,我会看到消息以及预期的所有其他内容。
执行基本相同操作的 Perl 脚本会按预期看到消息。
运行 paho_mqtt-1.5.1-py3-none-any.whl 和 Python 3.8.10
在 Ubuntu 20.04.3 服务器上。
任何想法,将不胜感激。
吉姆.
它没有忽略您的订阅,它完全按照您的要求进行操作。根据大量计算机问题,您要求它做的并不是您想要它做的。
让我们仔细看看:
v
|
Subscribe to indentify/+
Subscribe to indentify/#
Publish to identify/xxx
|
^
你能看到问题吗现在?我当然希望如此。
我怀疑您的“本质上相同”的 Perl 脚本的拼写可能比您的 Python 代码更好。 “Indentify”听起来像是 Python 程序员用来解决缩进问题的东西:-)
而且,如果我的回答在漫无边际中丢失,这通常是我的本性,这里是 Janet 和 John 位:
You did not spell "identify" correctly when subscribing. There's an extraneous "n" between the first two characters ("i" and "d"), giving you "i n dentify" (sans spaces - they're just there to make it more obvious).
我正在使用以下代码
client.loop_start()
client.subscribe("indentify/+")
client.subscribe("indentify/#")
client.subscribe("status/#")
#client.subscribe("#")
client.on_message=on_message
当我发送 identify/xxx 到服务器时,它被忽略了。如果我取消注释最后一个订阅行,我会看到消息以及预期的所有其他内容。 执行基本相同操作的 Perl 脚本会按预期看到消息。
运行 paho_mqtt-1.5.1-py3-none-any.whl 和 Python 3.8.10 在 Ubuntu 20.04.3 服务器上。 任何想法,将不胜感激。 吉姆.
它没有忽略您的订阅,它完全按照您的要求进行操作。根据大量计算机问题,您要求它做的并不是您想要它做的。
让我们仔细看看:
v
|
Subscribe to indentify/+
Subscribe to indentify/#
Publish to identify/xxx
|
^
你能看到问题吗现在?我当然希望如此。
我怀疑您的“本质上相同”的 Perl 脚本的拼写可能比您的 Python 代码更好。 “Indentify”听起来像是 Python 程序员用来解决缩进问题的东西:-)
而且,如果我的回答在漫无边际中丢失,这通常是我的本性,这里是 Janet 和 John 位:
You did not spell "identify" correctly when subscribing. There's an extraneous "n" between the first two characters ("i" and "d"), giving you "i n dentify" (sans spaces - they're just there to make it more obvious).