超时错误:在 mqtt 中使用公共代理时超时 [已解决]

问题描述 投票:0回答:1

当我使用本地broker,即localhost时,程序可以运行,但是当我使用公共broker(例如Eclipse Project)时,程序无法运行并出现错误

TimeoutError: timed out

有人可以帮助修复错误吗? 这是代码:

import paho.mqtt.client as mqtt
import time
import datetime

def on_message(client, userdata, message):
    print("Message received: ", message.payload.decode("utf-8"))

broker_address = "mqtt.eclipse.org"
client = mqtt.Client("P1")
client.on_message = on_message

client.connect(broker_address, port=1883)  # The default MQTT port is 1883

client.loop_start()

while True:
    current_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    client.publish("house/bulbs/bulb1", current_time)
    print(f"Published: {current_time}")
    time.sleep(1)

client.loop_stop()
python mqtt paho
1个回答
1
投票

另一个强烈推荐的免费公共 MQTT 经纪人是

broker.emqx.io
!!!

我经常对其进行一些测试,效果非常好。

© www.soinside.com 2019 - 2024. All rights reserved.