Проверка на доступность ESP8266 по MQTT

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
Aleksej_Novikov
Сообщения: 5
Зарегистрирован: Пн июл 17, 2017 10:16 am
Благодарил (а): 1 раз
Поблагодарили: 0

Проверка на доступность ESP8266 по MQTT

Сообщение Aleksej_Novikov » Чт июл 20, 2017 11:03 am

Добрый день!
Извиняюсь за глупый вопрос - только разбираюсь в системе majordomo - как проверить доступность Wi-Fi модуля ESP8266 через MQTT?
Сейчас ESP8266 каждую минуту отправляет по адресу ESP01/UPTIME время работы модуля. При отключении просто перестает поступать новая информация, а мне нужно чтобы система в таком случае реагировала на это выполняла какой-то сценарий. Каким образом это лучше сделать?
Аватара пользователя
Amarok
Сообщения: 1425
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Благодарил (а): 460 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Проверка на доступность ESP8266 по MQTT

Сообщение Amarok » Чт июл 20, 2017 12:24 pm

Взводить таймер?
К примеру, можно навесить на свойство uptime такой метод:

Код: Выделить всё

clearTimeOut("ESPnotAlive");
setTimeOut("ESPnotAlive","say('ESP не отвечает');",60); 
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165
Aleksej_Novikov
Сообщения: 5
Зарегистрирован: Пн июл 17, 2017 10:16 am
Благодарил (а): 1 раз
Поблагодарили: 0

Re: Проверка на доступность ESP8266 по MQTT

Сообщение Aleksej_Novikov » Чт июл 20, 2017 1:40 pm

Amarok писал(а):Взводить таймер?
К примеру, можно навесить на свойство uptime такой метод:

Код: Выделить всё

clearTimeOut("ESPnotAlive");
setTimeOut("ESPnotAlive","say('ESP не отвечает');",60);
Немного не понял. У меня есть объект ModuleUptime у которого изменяется свойство ModuleUptime.value каждые 60 секунд если модуль подключен (от MQTT). Если я создам метод с таймером то его можно будет запустить только при изменении значения value. Но при отключении ESP значение сохраняется и, соответственно, метод не выполняется. То есть нужно проверять каждые 60 секунд изменилось ли значение value или нет.
Аватара пользователя
Amarok
Сообщения: 1425
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Благодарил (а): 460 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Проверка на доступность ESP8266 по MQTT

Сообщение Amarok » Чт июл 20, 2017 6:28 pm

Вот на КЛАССОВОЕ свойство volume и надо повесить метод. А в настройках классового свойства указать метод запускаемый при изменении
Алиска живёт на Ubuntu Server 14.04.3 LTS
connect, группа в Telegram, Яндекс.Деньги для благодарностей за помощь: 41001355945165
Ответить