MQTT Последняя воля не сохраняется - PullRequest
0 голосов
/ 01 июня 2019

Я купил Huzzah ESP8266, который я использую для управления светодиодной лентой через веб-клиент.

Я реализовал сервер rabbitmq mqtt на Raspberry Pi.

Я начал использовать библиотеку PubSubClient для mqtt. Все шло довольно гладко, пока я не попытался отправить сообщение «Последняя воля», которое будет сохранено.

byte willQoS = 0;
const char* willTopic = "tv/pixel/status";
const char* willMessage = "turn off";
boolean willRetain = true;

client.connect("Pixel", "username", "password", willTopic, willQoS, willRetain, willMessage);

Что приводит к отправке полезных данных по таймауту, но не сохраняет их. Я в растерянности, я пытался изменить переменную вокруг, просмотрел библиотеку .cpp, но я не знаю достаточно о mqtt и C ++, чтобы решить ее

Если это ошибка, есть ли какие-либо другие библиотеки mqtt для arduino / esp8266, которые я могу отправлять последним сообщениям, которые можно сохранить?

1 Ответ

0 голосов
/ 04 июня 2019

Я использовал москит, и он прекрасно работает.Он также предоставляет библиотеку pubsub в настройке.

Это сообщения о воле для

. В MQTT вы используете функцию «Последняя воля и завет» (LWT), чтобы уведомлять других клиентов о неприемлемо отключенном клиенте.Каждый клиент может указать свое последнее сообщение при подключении к брокеру.

Надеюсь, ты ожидаешь того же.

...