⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test-device

📁 BlueZ源码
💻
字号:
#!/usr/bin/pythonimport sysimport dbusimport rebus = 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 "  list"	print "  create <address>"	print "  remove <address|path>"	print "  discover <address> [pattern]"	print "  class <address>"	print "  name <address>"	print "  alias <address> [alias]"	print "  trusted <address> [yes/no]"	sys.exit(1)if (sys.argv[1] == "list"):	list = adapter.ListDevices()	print list	sys.exit(0)if (sys.argv[1] == "create"):	if (len(sys.argv) < 3):		print "Need address parameter"	else:		device = adapter.CreateDevice(sys.argv[2])		print device	sys.exit(0)if (sys.argv[1] == "remove"):	if (len(sys.argv) < 3):		print "Need address or object path parameter"	else:		try:			path = adapter.FindDevice(sys.argv[2])		except:			path = sys.argv[2]		adapter.RemoveDevice(path)	sys.exit(0)if (sys.argv[1] == "discover"):	if (len(sys.argv) < 3):		print "Need address parameter"	else:		path = adapter.FindDevice(sys.argv[2])		device = dbus.Interface(bus.get_object("org.bluez", path),							"org.bluez.Device")		if (len(sys.argv) < 4):			pattern = ""		else:			pattern = sys.argv[3]		services = device.DiscoverServices(pattern);		for key in services.keys():			p = re.compile(">.*?<")			xml = p.sub("><", services[key].replace("\n", ""))			print "[ 0x%5x ]" % (key)			print xml			print	sys.exit(0)if (sys.argv[1] == "class"):	if (len(sys.argv) < 3):		print "Need address parameter"	else:		path = adapter.FindDevice(sys.argv[2])		device = dbus.Interface(bus.get_object("org.bluez", path),							"org.bluez.Device")		properties = device.GetProperties()		print "0x%06x" % (properties["Class"])	sys.exit(0)if (sys.argv[1] == "name"):	if (len(sys.argv) < 3):		print "Need address parameter"	else:		path = adapter.FindDevice(sys.argv[2])		device = dbus.Interface(bus.get_object("org.bluez", path),							"org.bluez.Device")		properties = device.GetProperties()		print properties["Name"]	sys.exit(0)if (sys.argv[1] == "alias"):	if (len(sys.argv) < 3):		print "Need address parameter"	else:		path = adapter.FindDevice(sys.argv[2])		device = dbus.Interface(bus.get_object("org.bluez", path),							"org.bluez.Device")		if (len(sys.argv) < 4):			properties = device.GetProperties()			print properties["Alias"]		else:			device.SetProperty("Alias", sys.argv[3])	sys.exit(0)if (sys.argv[1] == "trusted"):	if (len(sys.argv) < 3):		print "Need address parameter"	else:		path = adapter.FindDevice(sys.argv[2])		device = dbus.Interface(bus.get_object("org.bluez", path),							"org.bluez.Device")		if (len(sys.argv) < 4):			properties = device.GetProperties()			print properties["Trusted"]		else:			if (sys.argv[3] == "yes"):				value = dbus.Boolean(1)			elif (sys.argv[3] == "no"):				value = dbus.Boolean(0)			else:				value = dbus.Boolean(sys.argv[3])			device.SetProperty("Trusted", value)	sys.exit(0)print "Unknown command"sys.exit(1)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -