DBus-монитор для наблюдения за активностью Bluetooth

Я пытаюсь прочитать форму вывода Bluetoothctl автоматически. Таким образом, bash-скрипт будет сканировать вывод на наличие определенных слов, таких как и echo, если есть новое устройство. ([NEW] Устройство x:x:x:x:x). Теперь я обнаружил, что вы можете использовать DBus-мониторинг для этого. но я не уверен, как его использовать. и там не так много экзаменов. Ни гидов. Спасибо заранее

1 ответ

Решение

Bluetoothctl использует Bluez5. Bluez5 предоставляет интерфейсы в DBus для каждой функциональности, которую он предлагает.

Если вы хотите начать таким образом, попробуйте понять, что такое DBus и как вы можете его использовать. Затем посмотрите, какие интерфейсы DBus предоставляются Bluez и что вы можете с этим сделать. Наконец, начните вызывать методы DBus, либо напрямую, либо используя прокси!

Вот ссылка на исходный код bluetoothctl (посмотрите внизу, чтобы найти список команд, с которым вы знакомы) https://git.kernel.org/cgit/bluetooth/bluez.git/tree/client/main.c

Bluetoothctl был создан с использованием GBDus (привязки GLib для dbus в C), однако вы используете привязки python glib. В git выше вы также сможете найти документацию по всему интерфейсу bluez dbus в / tree / doc

Другие вопросы по тегам