【发布时间】:2016-09-17 00:25:04
【问题描述】:
我想使用 Python MQTT 连接到 Azure IoT Hub。
Iot Hub 需要用户名和 SAS 令牌。这是我的代码:
import paho.mqtt.client as mqtt
def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc))
client.subscribe("$SYS/#")
def on_message(client, userdata, msg):
print(msg.topic+" "+str(msg.payload))
client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.username_pw_set("myHub.azure-devices.net/device1", "mySASToken")
client.connect("myHub.azure-devices.net", 1883, 60)
client.loop_forever()
但是运行一段时间后,抛出了这个异常:
TimeoutError: [WinError 10060] 连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应
有人知道我为什么无法连接到 IoT 中心吗?
【问题讨论】:
-
确定是使用1883端口,而不是8883端口(TLS版本)?
标签: python azure mqtt azure-iot-hub