[Модуль] zigbee2mqtt (zigbee2mqtt)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

directman66
Сообщения: 2800
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 695 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Чт янв 09, 2020 12:09 pm

NightRider писал(а):
Чт янв 09, 2020 11:15 am
Если не было давно сообщений от устройств, в модуле они помечаются серым цветом. Все уже предусмотрено.

Тогда сразу несколько вопросов:
1. Где настройка "давно"? Для одних типов устройств это 1ч, для другим может быть и сутки.

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

[/quote]
 if (time()-strtotime($res[$i]['FIND'])>18000) {
  $res[$i]['LOST']='1';
}
Пока значение фиксировано, в секундах.


NightRider писал(а):
Чт янв 09, 2020 11:15 am
2. Помечаются серым? Предлагаете в админку постоянно заходить смотреть? Я бы хотел чтобы система сама это мониторила и сообщала мне, только когда устройство "отвалится". Это возможно в модуле?
Придумывайте алгоритм, рассмотрим. В принципе список устройств п1. можно получить sql запросом в сценарии.

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

$sql='SELECT * FROM zigbee2mqtt_devices where FIND< NOW()-18000';
$res=SQLSelect( $sql);
print_r($res);
Далее уже с этим массивом делайте, что хотите.

NightRider писал(а):
Чт янв 09, 2020 11:15 am
3. Что на счет мониторинга зарядки? По сути те же вопросы что и п.2
аналогично, viewtopic.php?f=5&t=6011&p=113254#p113254
NightRider писал(а):
Чт янв 09, 2020 11:15 am
4. Вы так и не ответили на мой основной вопрос: Это ошибка или так и задумано? На мой взгляд, если есть параметр (Сохранять только новые значения), то он должен работать. Сейчас по факту это не так.
Посмотрел, настройка применяется не при всех условиях. Для обычных параметров

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

if ($set_linked && $rec['LINKED_OBJECT'] && $rec['LINKED_PROPERTY']) {
$oldvalue=getGlobal($rec['LINKED_OBJECT'].'.'.$rec['LINKED_PROPERTY']);

if ($value<>$oldvalue)    setGlobal($rec['LINKED_OBJECT'].'.'.$rec['LINKED_PROPERTY'], $value, array($this->name=>'0'));
  }
Последний раз редактировалось directman66 Чт янв 09, 2020 1:22 pm, всего редактировалось 2 раза.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
directman66
Сообщения: 2800
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 695 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Чт янв 09, 2020 12:20 pm

mihas писал(а):
Чт янв 09, 2020 12:05 pm
directman66 писал(а):
Чт янв 09, 2020 10:54 am
Если не было давно сообщений от устройств, в модуле они помечаются серым цветом. Все уже предусмотрено.
Вы имеете ввиду в модуле или в ПУ?
В модуле.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
directman66
Сообщения: 2800
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 695 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Чт янв 09, 2020 1:14 pm

Сценарий запроса списка устройств с зарядом батареек менее 40 процентов:

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

$sql='SELECT VALUE, zigbee2mqtt_devices.*, zigbee2mqtt.DEV_ID, VALUE, UPDATED FROM zigbee2mqtt_devices, 
zigbee2mqtt, (select zigbee2mqtt.DEV_ID, zigbee2mqtt.METRIKA, max(zigbee2mqtt.UPDATED)  mx from zigbee2mqtt group by zigbee2mqtt.DEV_ID, zigbee2mqtt.METRIKA) aa
where zigbee2mqtt_devices.ID=zigbee2mqtt.DEV_ID
and zigbee2mqtt.METRIKA='battery' 
and aa.DEV_ID=zigbee2mqtt.DEV_ID
and aa.METRIKA=zigbee2mqtt.METRIKA
and aa.mx=zigbee2mqtt.UPDATED
and VALUE<40';

$res=SQLSelect( $sql);
print_r($res);
С этим массивом данных уже делайте, что хотите. Хоть в телегу отправляйте, хоть голосом проговаривайте.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
NightRider
Сообщения: 70
Зарегистрирован: Пт авг 21, 2015 2:27 pm
Благодарил (а): 8 раз
Поблагодарили: 4 раза

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение NightRider » Чт янв 09, 2020 1:51 pm

directman66 писал(а):
Чт янв 09, 2020 12:09 pm
Придумывайте алгоритм, рассмотрим. В принципе список устройств п1. можно получить sql запросом в сценарии.
Спасибо, конечно, за запросы, но Вы предлагаете написать к примеру сценарий, который бы выбирал данные sql запросом из таблиц вашего модуля? Считаете это хорошим решением? Это же два разных уровня абстракции.

Алгоритмы то придумывать не нужно, все просто и придумано давно. У каждого устройства есть настраиваемое свойство aliveTimeout, текущее состояние alive (которое обновляется по любому принятому сообщению), событие aliveUpdated.
С батарейкой можно добавить что-то типа lowLevel и событие onLowLevel.

Это если говорить о доработке модуля. Я не считаю что в этом есть необходимость. Достаточно заставить галочку "сохранять только новые значения" работать для всех свойств без исключения. А так выглядит странно, она есть везде, но работает при каких-то неведомых условиях.
directman66
Сообщения: 2800
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 695 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Чт янв 09, 2020 1:59 pm

NightRider писал(а):
Чт янв 09, 2020 1:51 pm
directman66 писал(а):
Чт янв 09, 2020 12:09 pm
Придумывайте алгоритм, рассмотрим. В принципе список устройств п1. можно получить sql запросом в сценарии.
Спасибо, конечно, за запросы, но Вы предлагаете написать к примеру сценарий, который бы выбирал данные sql запросом из таблиц вашего модуля? Считаете это хорошим решением? Это же два разных уровня абстракции.

Алгоритмы то придумывать не нужно, все просто и придумано давно. У каждого устройства есть настраиваемое свойство aliveTimeout, текущее состояние alive (которое обновляется по любому принятому сообщению), событие aliveUpdated.
С батарейкой можно добавить что-то типа lowLevel и событие onLowLevel.

Это если говорить о доработке модуля. Я не считаю что в этом есть необходимость. Достаточно заставить галочку "сохранять только новые значения" работать для всех свойств без исключения. А так выглядит странно, она есть везде, но работает при каких-то неведомых условиях.
Вы предлагаете какие-то косвенные варианты при наличии более точной информации.

Штатными средствами мажора умершие датчики показываются (давно не было изменений), раздел X-ray -> Not alive, или в ПУ показываются серым цветом. По батарейке такого нет, я вам дал код для интеграции.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
NightRider
Сообщения: 70
Зарегистрирован: Пт авг 21, 2015 2:27 pm
Благодарил (а): 8 раз
Поблагодарили: 4 раза

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение NightRider » Чт янв 09, 2020 2:39 pm

directman66 писал(а):
Чт янв 09, 2020 1:59 pm
Вы предлагаете какие-то косвенные варианты при наличии более точной информации.

Штатными средствами мажора умершие датчики показываются (давно не было изменений), раздел X-ray -> Not alive, или в ПУ показываются серым цветом. По батарейке такого нет, я вам дал код для интеграции.
Почему Вы считаете их косвенными? Обоснуйте, пожалуйста.
Предлагаемые методы получения "более точной информации" (из скрипта запрос sql к таблицам модуля) я считаю костылем. Потому как "завтра" может измениться структура таблиц и "привет" всем кто делал запросы sql. Очень надежно)

Какими штатными средствами мажора? Я не использую ПУ в данном случае. И еще раз, я кнопку не планирую периодически нажимать, к примеру это "экстренная" кнопка, нажимаемая в соответствующих ситуациях. Хотелось бы понимать, "жива" она или нет. По техническим сообщения от ноды это понять можно, но обрабатывать их не получается, потому как модуль их отфильтровывает.
mihas
Сообщения: 60
Зарегистрирован: Пт окт 04, 2019 11:20 am
Благодарил (а): 29 раз
Поблагодарили: 5 раз

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение mihas » Чт янв 09, 2020 5:22 pm

После некоторых обновлений перестало работать реле Xiaomi LLKZMK11LM, в логах пишет:
error 2020-01-09T14:17:20: No converter available for 'state_l2' (OFF)
debug 2020-01-09T14:17:20: Received MQTT message on 'zigbee2mqtt/0x00158d0003f1b5aa/set' with data '{"state_l2":"OFF"}'
error 2020-01-09T14:17:19: No converter available for 'state_l1' (OFF)

UPD: Отбой, обновил zigbee2mqtt все прошло
directman66
Сообщения: 2800
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 695 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Чт янв 09, 2020 5:43 pm

mihas писал(а):
Чт янв 09, 2020 5:22 pm
После некоторых обновлений перестало работать реле Xiaomi LLKZMK11LM, в логах пишет:
error 2020-01-09T14:17:20: No converter available for 'state_l2' (OFF)
debug 2020-01-09T14:17:20: Received MQTT message on 'zigbee2mqtt/0x00158d0003f1b5aa/set' with data '{"state_l2":"OFF"}'
error 2020-01-09T14:17:19: No converter available for 'state_l1' (OFF)

UPD: Отбой, обновил zigbee2mqtt все прошло
https://github.com/Koenkk/zigbee2mqtt/issues/2522

Вроде должно работать на 1.8.0.
За это сообщение автора directman66 поблагодарил:
mihas (Чт янв 09, 2020 8:45 pm)
Рейтинг: 1.16%
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
Аватара пользователя
Nail
Сообщения: 376
Зарегистрирован: Пн мар 05, 2018 7:09 am
Откуда: Самара
Благодарил (а): 174 раза
Поблагодарили: 28 раз

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение Nail » Сб янв 11, 2020 11:43 am

directman66 писал(а):
Ср янв 08, 2020 7:34 pm
Nail писал(а):
Ср янв 08, 2020 12:41 pm
ZNCLDJ12LM почему то не сопрягается.

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

2020-1-8 1:03:16 PM - warn: Please see: https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html
2020-1-8 1:03:16 PM - warn: Device with modelID 'lumi.curtain.hagl04' is not supported.
https://aliexpress.ru/item/33033942098. ... 33edPoCT80
B1 я тоже не с 1 раза понял, как выводить в режим сопряжения. Пробуйте усерднее и смотрите логи. Обновите z2m.
Как то сам сопрягся ночью и вылетел опять.А по вашему личному опыту B1 какими движениями вы сопрягли? :)

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

2020-1-11 12:44:29 PM - warn: Please see: https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html
2020-1-11 12:44:29 PM - warn: Device with modelID 'lumi.curtain.hagl04' is not supported.
2020-1-11 12:44:29 PM - debug: Received zigbee message of type 'endDeviceAnnce' with data '"0x04cf8cdf3c749def"' of device 'lumi.curtain.hagl04' (0x04cf8cdf3c749def) of endpoint 1
2020-1-11 12:44:23 PM - warn: Please see: https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html
2020-1-11 12:44:23 PM - warn: Device with modelID 'lumi.curtain.hagl04' is not supported.
Вложения
Screenshot_10.jpg
Screenshot_10.jpg (12.42 КБ) 3612 просмотров
Mini AMD A6 1450 Quad-core.Ubuntu Server 18.04 (64-bit). MegaD. Zigbee2mqtt+SLS DIN Mini. Broadlink.
directman66
Сообщения: 2800
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 695 раз
Контактная информация:

Re: [Модуль] zigbee2mqtt (zigbee2mqtt)

Сообщение directman66 » Сб янв 11, 2020 1:29 pm

Nail писал(а):
Сб янв 11, 2020 11:43 am
directman66 писал(а):
Ср янв 08, 2020 7:34 pm
Nail писал(а):
Ср янв 08, 2020 12:41 pm
ZNCLDJ12LM почему то не сопрягается.

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

2020-1-8 1:03:16 PM - warn: Please see: https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html
2020-1-8 1:03:16 PM - warn: Device with modelID 'lumi.curtain.hagl04' is not supported.
https://aliexpress.ru/item/33033942098. ... 33edPoCT80
B1 я тоже не с 1 раза понял, как выводить в режим сопряжения. Пробуйте усерднее и смотрите логи. Обновите z2m.
Как то сам сопрягся ночью и вылетел опять.А по вашему личному опыту B1 какими движениями вы сопрягли? :)

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

2020-1-11 12:44:29 PM - warn: Please see: https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html
2020-1-11 12:44:29 PM - warn: Device with modelID 'lumi.curtain.hagl04' is not supported.
2020-1-11 12:44:29 PM - debug: Received zigbee message of type 'endDeviceAnnce' with data '"0x04cf8cdf3c749def"' of device 'lumi.curtain.hagl04' (0x04cf8cdf3c749def) of endpoint 1
2020-1-11 12:44:23 PM - warn: Please see: https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html
2020-1-11 12:44:23 PM - warn: Device with modelID 'lumi.curtain.hagl04' is not supported.
Долгое нажатие на кнопку до первого загорания светодиода. Но вроде был какой-то момент, когда не получалось сопряч. Вроде не было свободных связей на сс2531. После сброса nvram вроде и спаривания всей сети заново заработало.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
Ответить