Как отправлять MQTT-пакеты, созданные с помощью библиотеки mqtt-пакетов? - PullRequest
0 голосов
/ 07 мая 2019

Я пытаюсь собрать mqtt-пакеты с пользовательскими полезными нагрузками, и я нашел эту библиотеку узлов https://github.com/mqttjs/mqtt-packet, так как она дает мне свободу создавать пользовательские полезные нагрузки для тестирования.Однако я не вижу, как после создания пакетов я мог бы отправить их брокеру MQTT.Нужен ли мне MQTT-клиент, который принимает пакеты, которые я создаю с помощью mqtt-пакета?Если у вас есть какие-либо другие предложения по созданию и отправке пользовательских пакетов mqtt, это будет очень полезно.

1 Ответ

1 голос
/ 07 мая 2019

Полезные нагрузки сообщений MQTT представляют собой просто байтовые массивы, в них можно отправлять все, что вы захотите.

Найденный вами пакет предназначен для использования внутри реализации клиента MQTT для создания фактических низкоуровневых пакетов, необходимых для реализацииПротокол MQTT.

Вы должны просто использовать обычный клиент MQTT, например, библиотеку MQTT.js .

Если вы хотите отправлять сообщения с двоичными данными, вы можете просто пропуститьБуфер для метода publish.Из MQTT.js документов :

mqtt.Client # publish (тема, сообщение, [параметры], [обратный вызов])

Публикация сообщения в теме

topic - тема для публикации, строка

message - это темасообщение для публикации, буфер или строка

параметры - параметры для публикации, в том числе:

  • уровень качества обслуживания Qos, число, значение по умолчанию 0
  • retain retain flag, Boolean, по умолчанию false
  • dup отмечать как дублирующий флаг, Boolean, false по умолчанию

    callback - функция (err), запускается при завершении обработки QoS, илина следующем тике, если QoS 0. Ошибка происходит, если клиент отключается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...