我使用python代码通过mqttc将消息发布到节点red。问题是在20 mqttc发布之后,数据没有发布到节点red。在
下面是我用于发布到节点red的python代码:
mqttc.connect("nodered&mqtt_server_ip",1883)
i=1
while True:
i=i+1
mqttc.publish("sensor",i,1)
time.sleep(1)
我也试过:
^{pr2}$
不管怎样,代码将前20个值发布到节点red,然后停止。在
我的节点red工作流如下。在
{1美元^
Tags:
http://mosquitto.org/man/mqtt-7.html
MQTT定义了三个服务质量(QoS)级别。QoS定义了代理/客户机尝试确保接收到消息的难度。消息可以在任何QoS级别发送,并且客户端可以尝试在任何QoS级别订阅主题。这意味着客户机选择它将接收的最大QoS。例如,如果一条消息以QoS 2发布,而客户机订阅了QoS 0,则该消息将以QoS 0传递给该客户机。如果第二个客户机也订阅了同一个主题,但使用QoS 2,则它将接收相同的消息,但具有QoS 2。对于第二个示例,如果客户机使用QoS 2订阅,并且在QoS 0上发布消息,则客户机将在QoS 0上接收该消息。在
更高级别的QoS更可靠,但涉及更高的延迟和更高的带宽要求。在
0:代理/客户端将传递消息一次,不进行确认。在
1:代理/客户端至少传递一次消息,需要确认。在
2:代理/客户机将通过四步握手传递消息一次。在
相关问题 更多 >
编程相关推荐