Home | History | Annotate | Download | only in test
      1 #!/usr/bin/python
      2 
      3 import sys
      4 import dbus
      5 import time
      6 
      7 bus = dbus.SystemBus()
      8 
      9 manager = dbus.Interface(bus.get_object("org.bluez", "/"), "org.bluez.Manager")
     10 
     11 adapter = dbus.Interface(bus.get_object("org.bluez", manager.DefaultAdapter()),
     12 							"org.bluez.Adapter")
     13 
     14 if (len(sys.argv) < 2):
     15 	print "Usage: %s <command>" % (sys.argv[0])
     16 	print ""
     17 	print "  address"
     18 	print "  name [name]"
     19 	print "  powered [on/off]"
     20 	print "  pairable [on/off]"
     21 	print "  pairabletimeout [timeout]"
     22 	print "  discoverable [on/off]"
     23 	print "  discoverabletimeout [timeout]"
     24 	print "  discovering"
     25 	sys.exit(1)
     26 
     27 if (sys.argv[1] == "address"):
     28 	properties = adapter.GetProperties()
     29 	print properties["Address"]
     30 	sys.exit(0)
     31 
     32 if (sys.argv[1] == "name"):
     33 	if (len(sys.argv) < 3):
     34 		properties = adapter.GetProperties()
     35 		print properties["Name"]
     36 	else:
     37 		adapter.SetProperty("Name", sys.argv[2])
     38 	sys.exit(0)
     39 
     40 if (sys.argv[1] == "powered"):
     41 	if (len(sys.argv) < 3):
     42 		properties = adapter.GetProperties()
     43 		print properties["Powered"]
     44 	else:
     45 		if (sys.argv[2] == "on"):
     46 			value = dbus.Boolean(1)
     47 		elif (sys.argv[2] == "off"):
     48 			value = dbus.Boolean(0)
     49 		else:
     50 			value = dbus.Boolean(sys.argv[2])
     51 		adapter.SetProperty("Powered", value)
     52 	sys.exit(0)
     53 
     54 if (sys.argv[1] == "pairable"):
     55 	if (len(sys.argv) < 3):
     56 		properties = adapter.GetProperties()
     57 		print properties["Pairable"]
     58 	else:
     59 		if (sys.argv[2] == "on"):
     60 			value = dbus.Boolean(1)
     61 		elif (sys.argv[2] == "off"):
     62 			value = dbus.Boolean(0)
     63 		else:
     64 			value = dbus.Boolean(sys.argv[2])
     65 		adapter.SetProperty("Pairable", value)
     66 	sys.exit(0)
     67 
     68 if (sys.argv[1] == "pairabletimeout"):
     69 	if (len(sys.argv) < 3):
     70 		properties = adapter.GetProperties()
     71 		print properties["PairableTimeout"]
     72 	else:
     73 		timeout = dbus.UInt32(sys.argv[2])
     74 		adapter.SetProperty("PairableTimeout", timeout)
     75 	sys.exit(0)
     76 
     77 if (sys.argv[1] == "discoverable"):
     78 	if (len(sys.argv) < 3):
     79 		properties = adapter.GetProperties()
     80 		print properties["Discoverable"]
     81 	else:
     82 		if (sys.argv[2] == "on"):
     83 			value = dbus.Boolean(1)
     84 		elif (sys.argv[2] == "off"):
     85 			value = dbus.Boolean(0)
     86 		else:
     87 			value = dbus.Boolean(sys.argv[2])
     88 		adapter.SetProperty("Discoverable", value)
     89 	sys.exit(0)
     90 
     91 if (sys.argv[1] == "discoverabletimeout"):
     92 	if (len(sys.argv) < 3):
     93 		properties = adapter.GetProperties()
     94 		print properties["DiscoverableTimeout"]
     95 	else:
     96 		timeout = dbus.UInt32(sys.argv[2])
     97 		adapter.SetProperty("DiscoverableTimeout", timeout)
     98 	sys.exit(0)
     99 
    100 if (sys.argv[1] == "discovering"):
    101 	properties = adapter.GetProperties()
    102 	print properties["Discovering"]
    103 	sys.exit(0)
    104 
    105 print "Unknown command"
    106 sys.exit(1)
    107