def device_info(args): if (len(args)): dev_path = args.pop(0) else: print 'Error: Must specify device path' return try: device = bt_manager.BTDevice(dev_path=dev_path) print '=========================================================' print device print '=========================================================' cod = bt_manager.BTCoD(device.Class) print 'Vendor Name:', bt_manager.VENDORS.get(device.Vendor, 'Unknown') print 'Device Class:', hex(device.Class) print 'Major Service Class:', str(cod.major_service_class) print 'Major Device Class:', str(cod.major_device_class) print 'Minor Device Class:', str(cod.minor_device_class) print '=========================================================' uuids = device.UUIDs for i in uuids: uuid = bt_manager.BTUUID(i) print bt_manager.SERVICES.get(uuid.uuid16, uuid) print '=========================================================' except dbus.exceptions.DBusException: print 'Unable to complete:', sys.exc_info()
def run(self): while self.connected_socket is not None: data = self.connected_socket.recv(1024) print "Printing sent Data: ", data if data == "start_pairing": self.commands.pair_device() pass if data == "start_discovery": self.commands.start_discovery() pass if data == "stop_discover": self.commands.stop_discovery() pass if data == "request_device_list": self.commands.list_paired_devices() pass if data == "set_default_device": device = bt_manager.BTDevice( self.adapter.find_device(self.connected_client_address)) self.config.SetDefaultBluetoothDevice(device) pass if data == "get_default_device": self.connected_socket.send( self.config.GetDefaultBluetoothDevice()) if data == "quit_connection": self.connected_socket.close() self.connected_socket = None
def on_device_found(address, properties): adapter.stop_discovery() caps = 'NoInputNoOutput' path = '/test/agent' agent = bt_manager.BTAgent(path=path) adapter.create_paired_device(address, path, caps) bluetoothConfig.SetDefaultBluetoothDevice( bt_manager.BTDevice(adapter.find_device(address)))
def device_disconnect(args): if (len(args)): dev_path = args.pop(0) else: print 'Error: Must specify device path' return try: device = bt_manager.BTDevice(dev_path=dev_path) device.disconnect() except dbus.exceptions.DBusException: print 'Unable to complete:', sys.exc_info()
def device_set(args): if (len(args) >= 2): dev_path = args.pop(0) name = args.pop(0) value = args.pop(0) else: print 'Error: Requires device path, property name and value' return try: device = bt_manager.BTDevice(dev_path=dev_path) device.set_property(name, value) except dbus.exceptions.DBusException: print 'Unable to complete:', sys.exc_info()
def device_discovery(args): if (len(args)): dev_path = args.pop(0) else: print 'Error: Must specify device path' return try: device = bt_manager.BTDevice(dev_path=dev_path) discovery = device.discover_services() if (discovery): for rec in discovery.keys(): print '=========================================================' # noqa print bt_manager.BTDiscoveryInfo(discovery[rec]) print '=========================================================' except dbus.exceptions.DBusException: print 'Unable to complete:', sys.exc_info()
def device_get(args): if (len(args)): dev_path = args.pop(0) if (len(args)): name = args.pop(0) else: name = None else: print 'Error: Requires device path' return try: device = bt_manager.BTDevice(dev_path=dev_path) print '=========================================================' print device.get_property(name=name) except dbus.exceptions.DBusException: print 'Unable to complete:', sys.exc_info()
def device_listen(args): if (len(args)): dev_path = args.pop(0) else: print 'Error: Requires device path' return global services try: device = bt_manager.BTDevice(dev_path=dev_path) device.add_signal_receiver(dump_signal, bt_manager.BTDevice.SIGNAL_PROPERTY_CHANGED, None) services[dev_path] = device except dbus.exceptions.DBusException: print 'Unable to complete:', sys.exc_info()
def GetDefaultBluetoothDevice(self): device = None if self.config.has_section(self.default_bluetooth_device): address = self.config.get(self.default_bluetooth_device, 'address') device = bt_manager.BTDevice(self.adapter.find_device(address)) return device