Description
This interface provides methods to list the available adapters, retrieve the default local adapter path and list/activate services. There is just one Manager object instance provided in the path "/org/bluez".
TBD: Relation between the adapter path id and the kernel adapter id
TBD: Manager path fallback behaviour
org.bluez.Manager
Manager hierarchy
=================
Service org.bluez
Interface org.bluez.Manager
Object path /org/bluez
Methods uint32 InterfaceVersion()
Returns the current interface version. At the moment
only version 0 is supported.
Possible errors: org.bluez.Error.InvalidArguments
string DefaultAdapter()
Returns object path for the default adapter.
Possible errors: org.bluez.Error.InvalidArguments
org.bluez.Error.NoSuchAdapter
string FindAdapter(string pattern)
Returns object path for the specified adapter. Valid
patterns are "hci0" or "00:11:22:33:44:55".
Possible errors: org.bluez.Error.InvalidArguments
org.bluez.Error.NoSuchAdapter
array{string} ListAdapters()
Returns list of adapter object paths under /org/bluez
Possible errors: org.bluez.Error.InvalidArguments
org.bluez.Error.Failed
org.bluez.Error.OutOfMemory
string FindService(string pattern)
Returns object path for the specified service. Valid
patterns are the unqiue identifier or a bus name.
Possible errors: org.bluez.Error.InvalidArguments
org.bluez.Error.NoSuchService
array{string} ListServices()
Returns list of object paths of current services.
Possible errors: org.bluez.Error.InvalidArguments
string ActivateService(string pattern)
Returns the unqiue bus id of the specified service.
Valid patterns are the same as for FindService(). If
the service is not running it will be started.
Signals void AdapterAdded(string path)
Parameter is object path of added adapter.
void AdapterRemoved(string path)
Parameter is object path of removed adapter.
void DefaultAdapterChanged(string path)
Parameter is object path of the new default adapter.
void ServiceAdded(string path)
Parameter is object path of registered service agent.
void ServiceRemoved(string path)
Parameter is object path of unregistered service agent.
Default Adapter
The default adapter assignment is controlled in the kernel. Generally the default adapter is the "hci0", but it can be considered rule. Suppose that two adapters are available(hci0 and hci1) if the user detach the default adapter(hci0) and attach it again, hci0 will not be default.
Clients that need track the default adapter Bluetooth address can track the DefaultAdapterChanged? signal and call GetAddress? method in the Adapter interface or use hci_get_route function(BlueZ Library).
Message Sequence Chart
TBD: adapter attach/dettach TBD: service activation
