如何在python中显示特定dbus总线名称(/ org / bluez)的接口?

时间:2015-05-14 14:50:57

标签: python ubuntu ubuntu-14.04 dbus bluez

我想了解bluez dbus总线中可用的对象和接口是什么。我写了一个简单的python脚本来列出dbus会话中的所有总线名称。

import dbus
for service in dbus.SystemBus().list_names():
    print(service)

但是,我只对bluez / org / bluez中的接口感兴趣。如何编写python脚本来列出/ org / bluez中的接口?

我正在使用Ubuntu 14.04和python 2.7

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

system_bus = dbus.SystemBus()
objectManager = system_bus.get_object('org.bluez', '/')
om_iface = dbus.Interface(objectManager, 'org.freedesktop.DBus.ObjectManager')

ifacelist = om_iface.GetManagedObjects()

其中ifacelist是{ObjectPath,Dictof {String,Variant}}}的词典