| #!/usr/bin/python |
| |
| import sys |
| import dbus |
| import time |
| |
| bus = dbus.SystemBus() |
| |
| manager = dbus.Interface(bus.get_object("org.bluez", "/"), "org.bluez.Manager") |
| |
| adapter = dbus.Interface(bus.get_object("org.bluez", manager.DefaultAdapter()), |
| "org.bluez.Adapter") |
| |
| if (len(sys.argv) < 2): |
| print "Usage: %s <command>" % (sys.argv[0]) |
| print "" |
| print " address" |
| print " name [name]" |
| print " powered [on/off]" |
| print " pairable [on/off]" |
| print " pairabletimeout [timeout]" |
| print " discoverable [on/off]" |
| print " discoverabletimeout [timeout]" |
| print " discovering" |
| sys.exit(1) |
| |
| if (sys.argv[1] == "address"): |
| properties = adapter.GetProperties() |
| print properties["Address"] |
| sys.exit(0) |
| |
| if (sys.argv[1] == "name"): |
| if (len(sys.argv) < 3): |
| properties = adapter.GetProperties() |
| print properties["Name"] |
| else: |
| adapter.SetProperty("Name", sys.argv[2]) |
| sys.exit(0) |
| |
| if (sys.argv[1] == "powered"): |
| if (len(sys.argv) < 3): |
| properties = adapter.GetProperties() |
| print properties["Powered"] |
| else: |
| if (sys.argv[2] == "on"): |
| value = dbus.Boolean(1) |
| elif (sys.argv[2] == "off"): |
| value = dbus.Boolean(0) |
| else: |
| value = dbus.Boolean(sys.argv[2]) |
| adapter.SetProperty("Powered", value) |
| sys.exit(0) |
| |
| if (sys.argv[1] == "pairable"): |
| if (len(sys.argv) < 3): |
| properties = adapter.GetProperties() |
| print properties["Pairable"] |
| else: |
| if (sys.argv[2] == "on"): |
| value = dbus.Boolean(1) |
| elif (sys.argv[2] == "off"): |
| value = dbus.Boolean(0) |
| else: |
| value = dbus.Boolean(sys.argv[2]) |
| adapter.SetProperty("Pairable", value) |
| sys.exit(0) |
| |
| if (sys.argv[1] == "pairabletimeout"): |
| if (len(sys.argv) < 3): |
| properties = adapter.GetProperties() |
| print properties["PairableTimeout"] |
| else: |
| timeout = dbus.UInt32(sys.argv[2]) |
| adapter.SetProperty("PairableTimeout", timeout) |
| sys.exit(0) |
| |
| if (sys.argv[1] == "discoverable"): |
| if (len(sys.argv) < 3): |
| properties = adapter.GetProperties() |
| print properties["Discoverable"] |
| else: |
| if (sys.argv[2] == "on"): |
| value = dbus.Boolean(1) |
| elif (sys.argv[2] == "off"): |
| value = dbus.Boolean(0) |
| else: |
| value = dbus.Boolean(sys.argv[2]) |
| adapter.SetProperty("Discoverable", value) |
| sys.exit(0) |
| |
| if (sys.argv[1] == "discoverabletimeout"): |
| if (len(sys.argv) < 3): |
| properties = adapter.GetProperties() |
| print properties["DiscoverableTimeout"] |
| else: |
| timeout = dbus.UInt32(sys.argv[2]) |
| adapter.SetProperty("DiscoverableTimeout", timeout) |
| sys.exit(0) |
| |
| if (sys.argv[1] == "discovering"): |
| properties = adapter.GetProperties() |
| print properties["Discovering"] |
| sys.exit(0) |
| |
| print "Unknown command" |
| sys.exit(1) |