Опубликовать сообщение MQTT через JavaScript - PullRequest
0 голосов
/ 10 февраля 2019

Я пытаюсь опубликовать MQTT-сообщение через javascript с использованием js-клиента Paho MQTT:

gClient = new Paho.Client("192.168.178.34", 9001, "clientId");
gClient.send("mytopic", "myvalue", 1, true);

Как я вижу в другом MQTT-клиенте, сообщение фактически отправлено.Но странным образом QOS равен 0 (не 1), и сообщение НЕ сохраняется.

Согласно документации https://www.eclipse.org/paho/files/jsdoc/Paho.MQTT.Client.html оно должно работать.Почему не так?

1 Ответ

0 голосов
/ 10 февраля 2019

Во-первых, QOS находится только между клиентом и брокером, а не между двумя клиентами, поэтому даже если сообщение опубликовано в QOS 1, если клиент подписался на QOS 0, это то, что увидит клиент.

Во-вторых, я на 99% уверен, что вы увидите оставшийся бит, установленный в другом клиенте, только когда сообщение доставлено как часть ответа на новую подписку, например, если вы опубликуете сообщение с сохраненным битомустановить, а затем подписать нового клиента на эту тему.Если клиент уже подключен, он не увидит установленный бит, так как в этот момент это просто нормальная доставка.

...