blueman-project/blueman — pull request #160 by cschramm (2014-12-26 10:46:51+00:00)
Title: Services

This branch introduces service classes as an abstraction away from the BlueZ dbus interface (which is problematic for the BlueZ 5 transition).

It makes Audio, RecentConns, and blueman-assistant work for BlueZ 5 (https://github.com/blueman-project/blueman/issues/13#issuecomment-59015346). Serial support is unfinished and this change currently also breaks it for BlueZ 4!

@AlexDaniel [provided](https://github.com/blueman-project/blueman/issues/85#issuecomment-67269716) this traceback I can work on while waiting for my HC-05:

````
Function on_request_menu_items on Services Failed
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/blueman/main/PluginManager.py", line 206, in Run
ret = getattr(inst, function)(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/blueman/plugins/manager/Services.py", line 66, in on_request_menu_items
add_menu_item(manager_menu, service)
File "/usr/local/lib/python2.7/dist-packages/blueman/plugins/manager/Services.py", line 37, in add_menu_item
if service.connected:
File "/usr/local/lib/python2.7/dist-packages/blueman/Service.py", line 74, in connected
return self.serial_port_id(args[0])
IndexError: tuple index out of range
````