Страница 1 из 28

[Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Ср сен 05, 2018 1:37 pm
SoulTaker
Написал новый модуль для получения оповещений о появлении определенных Bluetooth устройств в зоне видимости.
Первоначально хотел внести некоторые правки в уже существующий модуль от SergeJey, но после изучения его архитектуры понял, что нужно менять практически все, а это уже будет совершенно другое приложение. Потому и решил делать отдельно, дабы у пользователей был выбор что использовать.

Итак, главное отличие нового модуля - он опрашивает только указанные устройства, а не сканирует весь эфир в поисках нужного (хотя, такая возможность тоже присутствует). Доступны методы поиска с помощью сканирования радиоэфира, прямого подключения, PING запросов (только для Linux) и гибридный метод, который объединяет все вышеперечисленное.

Лично я рекомендую для Windows использовать метод прямого подключения (заранее нужно произвести сопряжение устройства и ПК), а для Linux - гибридный метод. Основное их преимущество перед сканированием эфира - возможность определения даже тех устройств, у которых выключен режим обнаружения.

Обратите внимание, что на данный момент обнаружение BLE (Bluetooth Low Energy) устройств доступно только на платформе Linux. Так же стоит учесть во внимание тот факт, что использование гибридного метода на Windows крайне не рекомендуется - сопряженные устройства при сканировании эфира будут всегда отображаться онлайн, даже если это не так (особенность утилиты BluetoothView).

Уведомления об изменении состояний необходимо обрабатывать с помощью методов Found/Lost объектов класса BluetoothDevices. Для корректной работы модуля необходимы последние версии пакетов BluetoothView >= 1.41 (для Windows систем) и bluez (для Linux систем).

Буду очень благодарен тем, кто потратит пол часа своего времени на тестирование и поиск ошибок. Так же приветствуются любые предложения и новые идеи.

Маркет: https://connect.smartliving.ru/addons/c ... 1/133.html
Github: https://github.com/thesoultaker48/major ... othdevices

Re: [Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Пт сен 07, 2018 6:32 am
Valphil
при попытке установки пишет

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

Warning: include_once(./modules/majordomo-bluetoothdevices-master/majordomo-bluetoothdevices-master.class.php): failed to open stream: No such file or directory in /var/www/html/modules/control_modules/control_modules.class.php on line 87

Warning: include_once(): Failed opening './modules/majordomo-bluetoothdevices-master/majordomo-bluetoothdevices-master.class.php' for inclusion (include_path='.:/usr/share/php') in /var/www/html/modules/control_modules/control_modules.class.php on line 87

Fatal error: Uncaught Error: Class 'majordomo' not found in /var/www/html/modules/control_modules/control_modules.class.php(90) : eval()'d code:1 Stack trace: #0 /var/www/html/modules/control_modules/control_modules.class.php(90): eval() #1 /var/www/html/lib/jTemplate.class.php(713) : eval()'d code(8): control_modules->run() #2 /var/www/html/lib/jTemplate.class.php(713): eval() #3 /var/www/html/lib/jTemplate.class.php(195): jTemplate->parseModules('<!DOCTYPE html>...', Array, './templates/') #4 /var/www/html/lib/jTemplate.class.php(109): jTemplate->parse('<!DOCTYPE html>...', Array, './templates/') #5 /var/www/html/lib/parser.class.php(93): jTemplate->__construct('./templates/pan...', Array, Object(panel)) #6 /var/www/html/lib/parser.class.php(63): parser->jtemplate_parse('./templates/pan...', Array) #7 /var/www/html/modules/panel.class.php(180): parser->__construct('./templates/pan...', Array, Object(panel)) #8 /var/www/html/admin.php(37): panel->run() #9 {main} thrown in /var/www/html/modules/control_modules/control_modules.class.php(90) : eval()'d code on line 1

Re: [Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Пт сен 07, 2018 6:38 am
Valphil
Сорри, я болван... Установил

Re: [Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Чт сен 13, 2018 7:58 am
ErmolenkoM
Добрый день!
Установил модуль, обновил bluez до последней версии. В списке устройств - пусто. Настройки попробовал все.
Куда смотреть?
С консоли устройства находит.
И пожелание - описать чуть подробнее что делает каждая из настроек в меню(зачем нужна), сейчас не понятно.

Re: [Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Чт сен 13, 2018 8:13 am
SoulTaker
ErmolenkoM писал(а):
Чт сен 13, 2018 7:58 am
В списке устройств - пусто. Куда смотреть? С консоли устройства находит.
Первоначально в список необходимо вручную добавить устройство, которое необходимо отслеживать. Для него создастся отдельный объект и запустится мониторинг.
ErmolenkoM писал(а):
Чт сен 13, 2018 7:58 am
И пожелание - описать чуть подробнее что делает каждая из настроек в меню(зачем нужна), сейчас не понятно.
Принято, сделаю!

Re: [Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Чт сен 13, 2018 12:40 pm
Ron
SoulTaker писал(а):
Ср сен 05, 2018 1:37 pm
Буду очень благодарен тем, кто потратит пол часа своего времени на тестирование и поиск ошибок. Так же приветствуются любые предложения и новые идеи.
После добавления maс адреса часов в первоначальный пустой список в модуль - завелся.
Обнаруживает на раз-два.
Очень удобный модуль для описания девайсов в мажорике по событиям и все остальное.

На Linux работает как дизель. Багов пока не нашел.

Если не считать, что сам не обнаруживает устройства как в модуле от Сергея.
Но наверное и не нужно. А то соседи шныряют со всякими девайсами и гости их и список растет на 2 листа )) Поди разберись сразу, где там твое :D

UPD
Да,чуть было не забыл.
В Распбери воткнут USB 4.0 BT девайс (внутренний BT отключен наглухо в конфиге), все вертится на Raspberry stretch
Единственно что ручками затолкал в него bluez 5.48

Re: [Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Чт сен 13, 2018 1:34 pm
ErmolenkoM
Автору модуля:
было бы удобно в интерфейсе иметь кнопки прямого перехода к объекту.

Re: [Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Чт сен 13, 2018 2:05 pm
SoulTaker
Ron писал(а):
Чт сен 13, 2018 12:40 pm
Если не считать, что сам не обнаруживает устройства как в модуле от Сергея.
Но наверное и не нужно. А то соседи шныряют со всякими девайсами и гости их и список растет на 2 листа )) Поди разберись сразу, где там твое :D
Именно, я с самого начала и делал так, чтобы в списке были только вручную добавленные девайсы. Возможно, реализую поиск всех устройств при добавлении нового в список. Чтобы не руками все вбивать, в можно было выбрать из доступного.
ErmolenkoM писал(а):
Чт сен 13, 2018 1:34 pm
Автору модуля:
было бы удобно в интерфейсе иметь кнопки прямого перехода к объекту.
Сделано

Re: [Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Чт сен 13, 2018 2:15 pm
Ron
SoulTaker писал(а):
Чт сен 13, 2018 2:05 pm
Возможно, реализую поиск всех устройств при добавлении нового в список. Чтобы не руками все вбивать, в можно было выбрать из доступного.
Вот чес слово не нужно!
Я понимаю тех, кто живет в своем доме и в зоне обнаружения только свои будут.
А у меня в новом доме сверху соседи общительная молодежь ))) Правда их научил уже уважать покой после 22.00 )))
И справа-слева то же общительные.
В день по 15-20 девайсов может налететь. И ладно если бы имена подхватывал норм,а то бывает только мак адрес и ищи свищи его в консоли кто такой. :)

Re: [Модуль] Устройства Bluetooth (bluetoothdevices)

Добавлено: Чт сен 13, 2018 2:21 pm
SoulTaker
Я имел в виду что то типа вот такого. Нажимаешь выбрать - и соответствующие поля заполняются необходимыми данными. При этом всегда доступна возможность ввести все самому вручную. Мне кажется может быть довольно таки удобным.
СпойлерПоказать
add.png
add.png (18.04 КБ) 9014 просмотров