当我的蓝牙耳机连接到我的电脑时,我想启动我的音乐播放器(Clementine).如何检测连接的蓝牙设备,以便我可以运行脚本来启动播放器?
解决方法:
我不喜欢轮询方法,所以我对bluez和DBus进行了一些挖掘.我最后编写了以下脚本:
#!/usr/bin/python
import dbus
from dbus.mainloop.glib import DBusGMainLoop
import gobject
import subprocess
# ID of the device we care about
DEV_ID = '00_1D_54_AB_DC_72'
dbus_loop = DBusGMainLoop()
bus = dbus.SystemBus(mainloop=dbus_loop)
# Figure out the path to the headset
man = bus.get_object('org.bluez', '/')
iface = dbus.Interface(man, 'org.bluez.Manager')
adapterPath = iface.DefaultAdapter()
headset = bus.get_object('org.bluez', adapterPath + '/dev_' + DEV_ID)
# ^^^ I'm not sure if that's kosher. But it works.
def cb(iface=None, mbr=None, path=None):<