【问题标题】:why isnt the mqtt client subscriber displaying topic?为什么 mqtt 客户端订阅不显示主题?
【发布时间】:2015-12-10 12:54:08
【问题描述】:

我是 MQTT 的新手。我在两台计算机上安装了 mosquitto 和 paho mqtt 库。计算机通过本地网络中的路由器连接。我在一台计算机上运行发布者和蚊子,在另一台计算机上运行订阅者。

# publisher.py code
# ===================================================================
#!/usr/local/bin/python3

import paho.mqtt.publish as publish

publish.single("paho/single", payload="boo", hostname="192.168.0.154")
# ===================================================================

以及订阅者代码

# subscriber.py

# =================================================================== 
#!/usr/local/bin/python3

import paho.mqtt.client as mqtt

mqttc = mqtt.Client("100")
mqttc.connect("192.168.0.154", 1883, 60)
mqttc.subscribe("paho/single", 0)

mqttc.loop_forever()
# ===================================================================

我可以看到订阅者和发布者在运行时都可以连接到 mosquitto。但是我看不到订阅者终端中显示的正在发布的主题。请帮忙。

【问题讨论】:

    标签: python-3.x mqtt


    【解决方案1】:

    您已订阅该主题,但尚未告诉客户端代码在消息到达时如何处理。

    以下更新应打印消息和主题

    # subscriber.py
    
    # =================================================================== 
    #!/usr/local/bin/python3
    
    import paho.mqtt.client as mqtt
    
    def on_message(client, userdata, msg):
      print(msg.topic+" "+str(msg.payload))
    
    
    mqttc = mqtt.Client("100")
    mqttc.on_message = on_message
    mqttc.connect("192.168.0.154", 1883, 60)
    mqttc.subscribe("paho/single", 0)
    
    mqttc.loop_forever()
    # ===================================================================
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-06
      • 1970-01-01
      • 1970-01-01
      • 2016-06-10
      • 1970-01-01
      • 2020-04-26
      相关资源
      最近更新 更多