bluetoothctl:在非交互模式下使用 gatt 菜单命令

bluetoothctl: using gatt menu commands in non-interactive mode

在我的 Raspberry Pi 4 上,我想在非交互模式下使用 bluetoothctl,但不知道如何访问 gatt 菜单。该命令应该类似于“bluetoothctl gatt menu list-attributes”,但此语法不起作用。

有关信息,在交互模式下,必须键入“menu gatt”才能切换到 gatt 菜单,然后才能使用“list-attributes”等命令。

提前致谢!

埃里克

bluetoothctl 允许使用点来指定命令以指示层次结构。例如 gatt.list-attributes

为了使用代码访问信息,BlueZ 使用 D-Bus 绑定提供 APIs。

例如,要获取 BlueZ 拥有的所有信息,可以这样做:

import pydbus
bus = pydbus.SystemBus()
obj_mngr = bus.get('org.bluez', '/')
mngd_objs = obj_mngr.GetManagedObjects()
for path, obj in mngd_objs.items():
    print(obj)

API 记录在:

https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc

示例位于:

https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/test