Модуль "Bluetooth-устройства"

Модули в MajorDoMo Комментариев нет

Принцип простой -- при наличии на сервере bluetooth-стэка можно запустить сканер, который периодически сканирует эфир на наличие bt-устройств, собирая их метки. Такой сканер встроен в сборку под Windows, но под Linux можно довольно просто собрать что-то аналогичное -- заменив скрипт сканирования эфира (они есть в инете). Метками являются mac-адреса, они по идее должны быть уникальными. Не поручусь, что на самом деле так, но пока с проблемой повтора мак-адреса не сталкивался. Так вот, задача сканера генерировать событие в системе при обнаружении нового bt-устройства, либо при исчезновении его из радиуса действия. База устройств содержит привязку к пользователям -- если какое-то из устройств пользователя обнаружено, то он где-то неподалёку.

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

Случаются нестыковки с железом телефона -- например iPhone не транслирует свой мак-адрес в эфир, если bluetooth-соединение не активно (хоть и включено). Транслирует только если подключить гарнитуру. Хотя с телефонами Nokia никаких проблем -- всегда видна в эфире.

Поделитесь в соц сетях

Теги: