Как отправить подтверждение после получения сообщения в клиентском пакете mjtt nodejs? - PullRequest
0 голосов
/ 25 сентября 2019

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

Я использую пакет клиента nodejs mqtt (https://www.npmjs.com/package/mqtt#publish). Есть ли функция подтверждения по умолчаниюдля пакета mqtt.

client.handleMessage = (packet: any, callback) => {
  console.log(packet);
};

В приведенном выше коде внутри сообщения дескриптора есть функция обратного вызова для возврата подтверждения по умолчанию на сервер.

1 Ответ

0 голосов
/ 25 сентября 2019

Нет.

В MQTT нет уведомления об окончании доставки.

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

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

* важно помнить, что существует и что угодно от 0 до множества подписчиков на данную тему

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