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

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

Модераторы: Bagir, Ivan, Vit, immortal, PAV

Аватара пользователя
SoulTaker
Сообщения: 46
Зарегистрирован: Пн авг 20, 2018 11:54 am
Откуда: Липецкая обл.
Благодарил (а): 6 раз
Поблагодарили: 43 раза
Контактная информация:

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

Сообщение SoulTaker » Ср сен 05, 2018 1:37 pm

Написал новый модуль для получения оповещений о появлении определенных 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
Последний раз редактировалось SoulTaker Чт сен 13, 2018 2:10 pm, всего редактировалось 2 раза.
За это сообщение автора SoulTaker поблагодарили (всего 13):
skysilver (Ср сен 05, 2018 1:48 pm) • odinvolk (Ср сен 05, 2018 3:06 pm) • Igor.P (Ср сен 05, 2018 3:55 pm) • lanket (Ср сен 05, 2018 6:40 pm) • Lerych (Ср сен 05, 2018 10:03 pm) • samolet (Ср сен 05, 2018 10:22 pm) • directman66 (Пт сен 07, 2018 8:03 am) • Logrus (Пт сен 07, 2018 11:29 am) • VooDooN (Пт сен 07, 2018 4:12 pm) • Ron (Пт сен 07, 2018 6:23 pm) и ещё 3
Рейтинг: 19.12%
Аватара пользователя
Valphil
Сообщения: 10
Зарегистрирован: Пт авг 10, 2018 4:16 am
Благодарил (а): 9 раз
Поблагодарили: 2 раза

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

Сообщение Valphil » Пт сен 07, 2018 6:32 am

при попытке установки пишет

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

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
Если я говорю "ты" - это не от неуважения, а для поддержания дружеской обстановки 8-)
Аватара пользователя
Valphil
Сообщения: 10
Зарегистрирован: Пт авг 10, 2018 4:16 am
Благодарил (а): 9 раз
Поблагодарили: 2 раза

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

Сообщение Valphil » Пт сен 07, 2018 6:38 am

Сорри, я болван... Установил
Если я говорю "ты" - это не от неуважения, а для поддержания дружеской обстановки 8-)
ErmolenkoM
Сообщения: 560
Зарегистрирован: Ср сен 04, 2013 10:31 am
Откуда: Самара
Благодарил (а): 99 раз
Поблагодарили: 132 раза
Контактная информация:

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

Сообщение ErmolenkoM » Чт сен 13, 2018 7:58 am

Добрый день!
Установил модуль, обновил bluez до последней версии. В списке устройств - пусто. Настройки попробовал все.
Куда смотреть?
С консоли устройства находит.
И пожелание - описать чуть подробнее что делает каждая из настроек в меню(зачем нужна), сейчас не понятно.
aka msh555
Cubian на Cubietruck, Connect
Аватара пользователя
SoulTaker
Сообщения: 46
Зарегистрирован: Пн авг 20, 2018 11:54 am
Откуда: Липецкая обл.
Благодарил (а): 6 раз
Поблагодарили: 43 раза
Контактная информация:

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

Сообщение SoulTaker » Чт сен 13, 2018 8:13 am

ErmolenkoM писал(а):
Чт сен 13, 2018 7:58 am
В списке устройств - пусто. Куда смотреть? С консоли устройства находит.
Первоначально в список необходимо вручную добавить устройство, которое необходимо отслеживать. Для него создастся отдельный объект и запустится мониторинг.
ErmolenkoM писал(а):
Чт сен 13, 2018 7:58 am
И пожелание - описать чуть подробнее что делает каждая из настроек в меню(зачем нужна), сейчас не понятно.
Принято, сделаю!
За это сообщение автора SoulTaker поблагодарили (всего 3):
ErmolenkoM (Чт сен 13, 2018 11:12 am) • odinvolk (Чт сен 13, 2018 11:13 am) • Ron (Чт сен 13, 2018 12:41 pm)
Рейтинг: 4.41%
Аватара пользователя
Ron
Сообщения: 349
Зарегистрирован: Пт окт 27, 2017 6:44 pm
Благодарил (а): 107 раз
Поблагодарили: 47 раз

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

Сообщение Ron » Чт сен 13, 2018 12:40 pm

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

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

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

UPD
Да,чуть было не забыл.
В Распбери воткнут USB 4.0 BT девайс (внутренний BT отключен наглухо в конфиге), все вертится на Raspberry stretch
Единственно что ручками затолкал в него bluez 5.48
Последний раз редактировалось Ron Чт сен 13, 2018 1:43 pm, всего редактировалось 2 раза.
ErmolenkoM
Сообщения: 560
Зарегистрирован: Ср сен 04, 2013 10:31 am
Откуда: Самара
Благодарил (а): 99 раз
Поблагодарили: 132 раза
Контактная информация:

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

Сообщение ErmolenkoM » Чт сен 13, 2018 1:34 pm

Автору модуля:
было бы удобно в интерфейсе иметь кнопки прямого перехода к объекту.
aka msh555
Cubian на Cubietruck, Connect
Аватара пользователя
SoulTaker
Сообщения: 46
Зарегистрирован: Пн авг 20, 2018 11:54 am
Откуда: Липецкая обл.
Благодарил (а): 6 раз
Поблагодарили: 43 раза
Контактная информация:

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

Сообщение SoulTaker » Чт сен 13, 2018 2:05 pm

Ron писал(а):
Чт сен 13, 2018 12:40 pm
Если не считать, что сам не обнаруживает устройства как в модуле от Сергея.
Но наверное и не нужно. А то соседи шныряют со всякими девайсами и гости их и список растет на 2 листа )) Поди разберись сразу, где там твое :D
Именно, я с самого начала и делал так, чтобы в списке были только вручную добавленные девайсы. Возможно, реализую поиск всех устройств при добавлении нового в список. Чтобы не руками все вбивать, в можно было выбрать из доступного.
ErmolenkoM писал(а):
Чт сен 13, 2018 1:34 pm
Автору модуля:
было бы удобно в интерфейсе иметь кнопки прямого перехода к объекту.
Сделано
За это сообщение автора SoulTaker поблагодарили (всего 2):
Ron (Чт сен 13, 2018 2:21 pm) • ErmolenkoM (Чт сен 13, 2018 2:25 pm)
Рейтинг: 2.94%
Аватара пользователя
Ron
Сообщения: 349
Зарегистрирован: Пт окт 27, 2017 6:44 pm
Благодарил (а): 107 раз
Поблагодарили: 47 раз

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

Сообщение Ron » Чт сен 13, 2018 2:15 pm

SoulTaker писал(а):
Чт сен 13, 2018 2:05 pm
Возможно, реализую поиск всех устройств при добавлении нового в список. Чтобы не руками все вбивать, в можно было выбрать из доступного.
Вот чес слово не нужно!
Я понимаю тех, кто живет в своем доме и в зоне обнаружения только свои будут.
А у меня в новом доме сверху соседи общительная молодежь ))) Правда их научил уже уважать покой после 22.00 )))
И справа-слева то же общительные.
В день по 15-20 девайсов может налететь. И ладно если бы имена подхватывал норм,а то бывает только мак адрес и ищи свищи его в консоли кто такой. :)
Аватара пользователя
SoulTaker
Сообщения: 46
Зарегистрирован: Пн авг 20, 2018 11:54 am
Откуда: Липецкая обл.
Благодарил (а): 6 раз
Поблагодарили: 43 раза
Контактная информация:

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

Сообщение SoulTaker » Чт сен 13, 2018 2:21 pm

Я имел в виду что то типа вот такого. Нажимаешь выбрать - и соответствующие поля заполняются необходимыми данными. При этом всегда доступна возможность ввести все самому вручную. Мне кажется может быть довольно таки удобным.
СпойлерПоказать
add.png
add.png (18.04 КБ) 156 просмотров
За это сообщение автора SoulTaker поблагодарили (всего 2):
Ron (Чт сен 13, 2018 2:23 pm) • skysilver (Чт сен 13, 2018 8:48 pm)
Рейтинг: 2.94%
Ответить