Обновить

Комментарии 10

Ох какая сложная схема. В HA ставится интеграция Mikrotik, в которой присутствие телефона в сети работает штатно без сложной настройки. Далее телефон связываешь с жильцом. И всё, пили любые сценарии!

Чтобы связать устройство с пользователем для начала нужна сущность "пользователь". А его в HomeKit (а sprut.hub как раз сделан так, что его модель сущностей полностью взята оттуда - это и позволяем ему легко интегрировать с другими системами) нет. Была бы такая сущность - можно было бы затащить.

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

Единственный надежный способ - это BLE-брелок и любой сканер, например на том же ESP32.

Я как раз и описал непингование. При засыпании телефона регистрация на WiFi не пропадает. Да, IP не работает, но это и неважно.

На всех телефонах отключено стандартное поведение со случайным МАСом?

Да вот как-то у меня ни на одном устройстве не нашлось случайного MAC, хотя проверял специально. Вроде как WiFi точка в списке доверенных, и MAC для неё постоянный.

С точки зрения обычного пользователя крайне ненадёжный подход с учётом того что гаджеты раз в год-два меняются, теряются, разряжаются и т.д. а Android устройства ещё и часто имеют рандомный мак адрес как упоминали выше. Да и сами роутеры раз несколько лет меняются. Под это всё каждый раз придётся переписывать код. Ещё хуже по прошествии пару лет когда у нескольких пользователей поменяются смартфоны дом будет переходить в спящий режим каждый день рандомно, а домохозяйка пользователь не будет знать как это исправить.

Так что надёжнее микроволновый датчик движения в коридоре прихожей и в санузле - больше суток нет движения переводим дом в спящий режим. Сценарий будет работать годами и не требовать навыков программиста чтобы что-то поправить.

MAC - это да. Но устройства меняются всё-таки не так быстро. Да и даже раз в год пару строчек настроить - не проблема. А можно и автоматическое "слияние" по имени сделать уже средствами Sprut.hub. Так что физические устройства меняются, а персональный presence будет работать.
Что касается "роутеры меняются". Да, меняются. Но операционки достаточно стабильны. Вот мне в личку человек написал, что уже форкнул мой скрипт для работы с новым CAPsMAN (он появился с новыми точками доступами). Правка тоже заняла пару строк. Так что лет на 5 работать будет вообще без правок.

У меня были мысли собрать все три варианта с микротика (локальный, старый CAPsMAN и новый CAPsMAN) в один скрипт, но придумать хороший алгоритм слияния результатов из разных мест я не смог, а принцип "всё равно использовать будут что-то одно" мне не понравился (возможно, и зря).
Что касается микроволнового датчика, то для детектирования занятости помещения на предмет включения света - незаменимая штука да. Но вот человека от собаки они ещё как-то различают, а одного человека от другого - уже нет. Т.е. включить свет в моей комнате, когда я на крыльце - не решит такой задачи.
Опять-таки, то, что хорошо для квартиры - не очень для дома. В доме одним датчиком не обойдёшься. А WiFi уже есть.
По наблюдениям за чатом поддержки, сценарии, завязанные на условия "что-то (не) происходит в течение какого-то времени" показывают свою низкую надёжность. Да и зачем мне узнать "через несколько дней", что никого нет дома, если я вечером вернусь? А вот когда днём дома никого - можно не греть горячую воду. И температуру комнатную снизить. В течение дня, да.

Это всё хорошо пока вы живёте один и программист.

А теперь добавляем сюда типичного заказчика системы Умный Дом у которого жена, несколько детей и несколько объектов недвижимости. И гаджеты у которых меняются раз в год по мере выхода последней модели.

Так что да, побольше проверок в ваш скрипт и на mac-адрес и на имя устройства и на доступность информации от роутера - чтобы он не выключил чего лишнего когда вышел новый iPhone для жены или ребёнок свой андроид с рандомным маком в очередной раз разбил.

Это что касается вообще идеи по удешевлению обнаружения присутствия людей дома.

Тоже касается сценариев индивидуальной работы освещения для каждого члена семьи.. Помимо того что сложно будет работать если в комнате больше 2 человек - нужен ещё удобный способ чтобы пользователи сами могли вносить изменения - иначе помимо штатной домработницы потребуется ещё штатный программист.

Случайный MAC используется для поиска-сканирования сетей, иногда при подключении к открытым сетям. Если сеть использует ключ то МАК всегда постоянен для работы с этой сетью

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации