#!/usr/bin/python import sys import getopt import dbus bus = dbus.SystemBus() bmgr = dbus.Interface(bus.get_object('org.bluez', '/org/bluez'), 'org.bluez.Manager') bus_id = bmgr.ActivateService('input') imgr = dbus.Interface(bus.get_object(bus_id, '/org/bluez/input'), 'org.bluez.input.Manager') optlist, args = getopt.getopt(sys.argv[1:], '', ['list','connect=','disconnect=','help']) for opt,val in optlist: if opt == '--list': for path in imgr.ListDevices(): idev = dbus.Interface (bus.get_object(bus_id, path), 'org.bluez.input.Device') print path, 'name:', idev.GetName(), 'connected:', idev.IsConnected() elif opt == '--connect': path = imgr.CreateDevice(val) idev = dbus.Interface (bus.get_object(bus_id, path), 'org.bluez.input.Device') idev.Connect() elif opt == '--disconnect': imgr.RemoveDevice(val) elif opt == '--help': print 'usage: ', sys.argv[0], '[ --list, --connect=XX:XX:XX:XX:XX, --disconnect=/org/bluez/input/device0, --help ]'