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

Related Documents