BlueZ D-Bus Adapter API description *********************************** Copyright (C) 2004-2010 Marcel Holtmann Copyright (C) 2005-2006 Johan Hedberg Copyright (C) 2005-2006 Claudio Takahasi Copyright (C) 2006-2007 Luiz von Dentz Adapter hierarchy ================= Service org.bluez Interface org.bluez.Adapter Object path [variable prefix]/{hci0,hci1,...} Methods dict GetProperties() Returns all properties for the adapter. See the properties section for available properties. Possible Errors: org.bluez.Error.NotReady void SetProperty(string name, variant value) Changes the value of the specified property. Only properties that are listed as read-write are changeable. On success this will emit a PropertyChanged signal. Possible Errors: org.bluez.Error.InvalidArguments void RequestSession() This method requests a client session that provides operational Bluetooth. A possible mode change must be confirmed by the user via the agent. Clients may request multiple sessions. All sessions are released when adapter's mode is changed to off state. Possible Errors: org.bluez.Error.Rejected void ReleaseSession() Release a previously requested session. It sets adapter to the mode in use on the moment of session request. SetProperty method call changes adapter's mode persistently, such that session release will not modify it. Possible Errors: org.bluez.Error.DoesNotExist void StartDiscovery() This method starts the device discovery session. This includes an inquiry procedure and remote device name resolving. Use StopDiscovery to release the sessions acquired. This process will start emitting DeviceFound and PropertyChanged "Discovering" signals. Possible errors: org.bluez.Error.NotReady org.bluez.Error.Failed void StopDiscovery() This method will cancel any previous StartDiscovery transaction. Note that a discovery procedure is shared between all discovery sessions thus calling StopDiscovery will only release a single session. Possible errors: org.bluez.Error.NotReady org.bluez.Error.Failed org.bluez.Error.NotAuthorized object FindDevice(string address) Returns the object path of device for given address. Possible Errors: org.bluez.Error.DoesNotExist org.bluez.Error.InvalidArguments void RemoveDevice(object device) This removes the remote device object at the given path. It will remove also the pairing information. Possible errors: org.bluez.Error.InvalidArguments org.bluez.Error.Failed void RegisterAgent(object agent, string capability) This registers the adapter wide agent. The object path defines the path of the agent that will be called when user input is needed. If an application disconnects from the bus all of its registered agents will be removed. The capability parameter can have the values "DisplayOnly", "DisplayYesNo", "KeyboardOnly", "NoInputNoOutput" and "KeyboardDisplay" which reflects the input and output capabilities of the agent. If an empty string is used it will fallback to "DisplayYesNo". Possible errors: org.bluez.Error.InvalidArguments org.bluez.Error.AlreadyExists void UnregisterAgent(object agent) This unregisters the agent that has been previously registered. The object path parameter must match the same value that has been used on registration. Possible errors: org.bluez.Error.DoesNotExist Signals PropertyChanged(string name, variant value) This signal indicates a changed value of the given property. DevicesFound(array{object path, dict values}) This signal will be sent every time devices have been found. In general they only appear during a device discovery. The dictionary contains the properties from the org.bluez.Device interface. DeviceCreated(object device) Parameter is object path of created device. DeviceRemoved(object device) Parameter is object path of removed device. Properties string Address [readonly] The Bluetooth device address. string Name [readwrite] The Bluetooth friendly name. This value can be changed and a PropertyChanged signal will be emitted. uint32 Class [readonly] The Bluetooth class of device. boolean Powered [readwrite] Switch an adapter on or off. This will also set the appropriate connectable state. boolean Discoverable [readwrite] Switch an adapter to discoverable or non-discoverable to either make it visible or hide it. This is a global setting and should only be used by the settings application. If the DiscoverableTimeout is set to a non-zero value then the system will set this value back to false after the timer expired. In case the adapter is switched off, setting this value will fail. When changing the Powered property the new state of this property will be updated via a PropertyChanged signal. boolean Pairable [readwrite] Switch an adapter to pairable or non-pairable. This is a global setting and should only be used by the settings application. Note that this property only affects incoming pairing requests. uint32 PairableTimeout [readwrite] The pairable timeout in seconds. A value of zero means that the timeout is disabled and it will stay in pairable mode forever. uint32 DiscoverableTimeout [readwrite] The discoverable timeout in seconds. A value of zero means that the timeout is disabled and it will stay in discoverable/limited mode forever. The default value for the discoverable timeout should be 180 seconds (3 minutes). boolean Discovering [readonly] Indicates that a device discovery procedure is active. array{object} Devices [readonly] List of device object paths. array{string} UUIDs [readonly] List of 128-bit UUIDs that represents the available local services.