[Модуль] Устройства Bluetooth (bluetoothdevices)
Модератор: immortal
[Модуль] Устройства Bluetooth (bluetoothdevices)
Написал новый модуль для получения оповещений о появлении определенных 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
Первоначально хотел внести некоторые правки в уже существующий модуль от 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 раза.
Re: [Модуль] Устройства Bluetooth (bluetoothdevices)
при попытке установки пишет
Код: Выделить всё
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)
Сорри, я болван... Установил
Если я говорю "ты" - это не от неуважения, а для поддержания дружеской обстановки 
-
ErmolenkoM
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Контактная информация:
Re: [Модуль] Устройства Bluetooth (bluetoothdevices)
Добрый день!
Установил модуль, обновил bluez до последней версии. В списке устройств - пусто. Настройки попробовал все.
Куда смотреть?
С консоли устройства находит.
И пожелание - описать чуть подробнее что делает каждая из настроек в меню(зачем нужна), сейчас не понятно.
Установил модуль, обновил bluez до последней версии. В списке устройств - пусто. Настройки попробовал все.
Куда смотреть?
С консоли устройства находит.
И пожелание - описать чуть подробнее что делает каждая из настроек в меню(зачем нужна), сейчас не понятно.
Re: [Модуль] Устройства Bluetooth (bluetoothdevices)
Первоначально в список необходимо вручную добавить устройство, которое необходимо отслеживать. Для него создастся отдельный объект и запустится мониторинг.ErmolenkoM писал(а): Чт сен 13, 2018 7:58 am В списке устройств - пусто. Куда смотреть? С консоли устройства находит.
Принято, сделаю!ErmolenkoM писал(а): Чт сен 13, 2018 7:58 am И пожелание - описать чуть подробнее что делает каждая из настроек в меню(зачем нужна), сейчас не понятно.
Re: [Модуль] Устройства Bluetooth (bluetoothdevices)
После добавления maс адреса часов в первоначальный пустой список в модуль - завелся.SoulTaker писал(а): Ср сен 05, 2018 1:37 pm Буду очень благодарен тем, кто потратит пол часа своего времени на тестирование и поиск ошибок. Так же приветствуются любые предложения и новые идеи.
Обнаруживает на раз-два.
Очень удобный модуль для описания девайсов в мажорике по событиям и все остальное.
На Linux работает как дизель. Багов пока не нашел.
Если не считать, что сам не обнаруживает устройства как в модуле от Сергея.
Но наверное и не нужно. А то соседи шныряют со всякими девайсами и гости их и список растет на 2 листа )) Поди разберись сразу, где там твое
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
- Откуда: Самара
- Контактная информация:
Re: [Модуль] Устройства Bluetooth (bluetoothdevices)
Автору модуля:
было бы удобно в интерфейсе иметь кнопки прямого перехода к объекту.
было бы удобно в интерфейсе иметь кнопки прямого перехода к объекту.
Re: [Модуль] Устройства Bluetooth (bluetoothdevices)
Именно, я с самого начала и делал так, чтобы в списке были только вручную добавленные девайсы. Возможно, реализую поиск всех устройств при добавлении нового в список. Чтобы не руками все вбивать, в можно было выбрать из доступного.Ron писал(а): Чт сен 13, 2018 12:40 pm Если не считать, что сам не обнаруживает устройства как в модуле от Сергея.
Но наверное и не нужно. А то соседи шныряют со всякими девайсами и гости их и список растет на 2 листа )) Поди разберись сразу, где там твое![]()
СделаноErmolenkoM писал(а): Чт сен 13, 2018 1:34 pm Автору модуля:
было бы удобно в интерфейсе иметь кнопки прямого перехода к объекту.
Re: [Модуль] Устройства Bluetooth (bluetoothdevices)
Вот чес слово не нужно!SoulTaker писал(а): Чт сен 13, 2018 2:05 pm Возможно, реализую поиск всех устройств при добавлении нового в список. Чтобы не руками все вбивать, в можно было выбрать из доступного.
Я понимаю тех, кто живет в своем доме и в зоне обнаружения только свои будут.
А у меня в новом доме сверху соседи общительная молодежь ))) Правда их научил уже уважать покой после 22.00 )))
И справа-слева то же общительные.
В день по 15-20 девайсов может налететь. И ладно если бы имена подхватывал норм,а то бывает только мак адрес и ищи свищи его в консоли кто такой.
Re: [Модуль] Устройства Bluetooth (bluetoothdevices)
Я имел в виду что то типа вот такого. Нажимаешь выбрать - и соответствующие поля заполняются необходимыми данными. При этом всегда доступна возможность ввести все самому вручную. Мне кажется может быть довольно таки удобным.
SPOILERSPOILER_SHOW