Перейти к содержанию

Вопрос

Опубликовано

Привет,

Имею нетривиальную задачку: в домашней сети есть некоторое количество устройств (термостаты), которые отзываются на mDNS (точнее, даже DNS-SD), причем, в ответе на запрос отдают кучу нужной мне информации - уставка, текущая температура в помещении и прочее. 
Также имеется некий контроллер умного дома, который умеет загружать данные по http либо дергая конкретный порт UDP. Научить его опрашивать термостаты по dns-sd я не могу в силу ряда причин. 

Возникает задача - делать опрос устройств (на bash или powershell я такой скрипт напишу без проблем) и отдавать результаты этого опроса, например, по запросу на заданный UDP-порт.

Для примера, вот образец опроса в винде (кое-что сократил):

 

PS C:\Users\Cyril> dns-sd -B _services._dns-sd._udp
Browsing for _services._dns-sd._udp
Timestamp     A/R Flags if Domain                    Service Type              Instance Name
19:46:12.684  Add     2  8 .                         _udp.local.               _syncleo
PS C:\Users\Cyril> dns-sd -B _syncleo._udp local
Browsing for _syncleo._udp.local
Timestamp     A/R Flags if Domain                    Service Type              Instance Name
19:46:53.769  Add     3  8 local.                    _syncleo._udp.            641*
19:46:53.769  Add     3  8 local.                    _syncleo._udp.            4c2*
19:46:53.769  Add     3  8 local.                    _syncleo._udp.            4c3*
19:46:53.769  Add     2  8 local.                    _syncleo._udp.            f04*
PS C:\Users\Cyril> dns-sd -L 641* _syncleo._udp local
Lookup 641*_syncleo._udp.local
19:47:54.043  641*_syncleo._udp.local. can be reached at 641*.local.:41122 (interface 8)
 000000000000.temperature=23.40 000000000000.target_temp=5.0 public=* curve=29 vendor=RusClimate basetype=67 devtype=67 firmware=1.55 protocol=2 macaddr=*:*:*:*:*:*

Внимание, вопрос (-ы): 
1. Реализуемо ли такое на кинетике? 
2. Если да - куда (откуда) начинать копать? 

Очень не хочется ради опроса четырёх железок городить какой-то сервер.. 

Спасибо! 

Рекомендуемые сообщения

  • 0
Опубликовано
13 часов назад, CyrillU сказал:

Привет,

Имею нетривиальную задачку: в домашней сети есть некоторое количество устройств (термостаты), которые отзываются на mDNS (точнее, даже DNS-SD), причем, в ответе на запрос отдают кучу нужной мне информации - уставка, текущая температура в помещении и прочее. 
Также имеется некий контроллер умного дома, который умеет загружать данные по http либо дергая конкретный порт UDP. Научить его опрашивать термостаты по dns-sd я не могу в силу ряда причин. 

Возникает задача - делать опрос устройств (на bash или powershell я такой скрипт напишу без проблем) и отдавать результаты этого опроса, например, по запросу на заданный UDP-порт.

Для примера, вот образец опроса в винде (кое-что сократил):

 

PS C:\Users\Cyril> dns-sd -B _services._dns-sd._udp
Browsing for _services._dns-sd._udp
Timestamp     A/R Flags if Domain                    Service Type              Instance Name
19:46:12.684  Add     2  8 .                         _udp.local.               _syncleo
PS C:\Users\Cyril> dns-sd -B _syncleo._udp local
Browsing for _syncleo._udp.local
Timestamp     A/R Flags if Domain                    Service Type              Instance Name
19:46:53.769  Add     3  8 local.                    _syncleo._udp.            641*
19:46:53.769  Add     3  8 local.                    _syncleo._udp.            4c2*
19:46:53.769  Add     3  8 local.                    _syncleo._udp.            4c3*
19:46:53.769  Add     2  8 local.                    _syncleo._udp.            f04*
PS C:\Users\Cyril> dns-sd -L 641* _syncleo._udp local
Lookup 641*_syncleo._udp.local
19:47:54.043  641*_syncleo._udp.local. can be reached at 641*.local.:41122 (interface 8)
 000000000000.temperature=23.40 000000000000.target_temp=5.0 public=* curve=29 vendor=RusClimate basetype=67 devtype=67 firmware=1.55 protocol=2 macaddr=*:*:*:*:*:*

Внимание, вопрос (-ы): 
1. Реализуемо ли такое на кинетике? 
2. Если да - куда (откуда) начинать копать? 

Очень не хочется ради опроса четырёх железок городить какой-то сервер.. 

Спасибо! 

Ставьте entware, там можно делать многое. Может быть даже решение и для вашей задачи есть готовое. 

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.