BlueZ D-Bus Device API description ********************************** Copyright (C) 2004-2008 Marcel Holtmann Copyright (C) 2005-2006 Johan Hedberg Copyright (C) 2005-2006 Claudio Takahasi Copyright (C) 2006-2007 Luiz von Dentz Device hierarchy ================ Service org.bluez Interface org.bluez.Device Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX Methods dict GetProperties() Returns all properties for the adapter. See the properties section for available properties. Possible Errors: org.bluez.Error.DoesNotExist org.bluez.Error.InvalidArguments void SetProperty(string name, variant value) Changes the value of the specified property. Only properties that are listed a read-write are changeable. On success this will emit a PropertyChanged signal. Possible Errors: org.bluez.Error.DoesNotExist org.bluez.Error.InvalidArguments dict DiscoverServices(string pattern) This method starts the service discovery to retrieve remote service records. The pattern parameter can be used to specific specific UUIDs. The return value is a dictionary with the record handles as keys and the service record in XML format as values. The key is uint32 and the value a string for this dictionary. Possible errors: org.bluez.Error.NotReady org.bluez.Error.Failed org.bluez.Error.InProgress void CancelDiscovery() This method will cancel any previous DiscoverServices transaction. Possible errors: org.bluez.Error.NotReady org.bluez.Error.Failed org.bluez.Error.NotAuthorized void Disconnect() This method disconnects a specific remote device by terminating the low-level ACL connection. The use of this method should be restricted to administrator use. A DisconnectRequested signal will be sent and the actual disconnection will only happen 2 seconds later. This enables upper-level applications to terminate their connections gracefully before the ACL connection is terminated. Possible errors: org.bluez.Error.NotConnected array{object} ListNodes() Returns list of device node object paths. Possible errors: org.bluez.Error.InvalidArguments org.bluez.Error.Failed org.bluez.Error.OutOfMemory object CreateNode(string uuid) Creates a persistent device node binding with a remote device. The actual support for the specified UUID depends if the device driver has support for persistent binding. At the moment only RFCOMM TTY nodes are supported. Possible errors: org.bluez.Error.InvalidArguments org.bluez.Error.NotSupported void RemoveNode(object node) Removes a persistent device node binding. Possible errors: org.bluez.Error.InvalidArguments org.bluez.Error.DoesNotExist Signals PropertyChanged(string name, variant value) This signal indicates a changed value of the given property. DisconnectRequested() This signal will be sent when a low level disconnection to a remote device has been requested. The actual disconnection will happen 2 seconds later. NodeCreated(object node) Parameter is object path of created device node. NodeRemoved(object node) Parameter is object path of removed device node. Properties string Address [readonly] The Bluetooth device address of the remote device. string Name [readonly] The Bluetooth remote name. This value can not be changed. Use the Alias property instead. string Icon [readonly] Proposed icon name according to the freedesktop.org icon naming specification. uint32 Class [readonly] The Bluetooth class of device of the remote device. array{string} UUIDs [readonly] List of 128-bit UUIDs that represents the available remote services. boolean Paired [readonly] Indicates if the remote device is paired. boolean Connected [readonly] Indicates if the remote device is currently connected. A PropertyChanged signal indicate changes to this status. boolean Trusted [readwrite] Indicates if the remote is seen as trusted. This setting can be changed by the application. string Alias [readwrite] The name alias for the remote device. The alias can be used to have a different friendly name for the remote device. In case no alias is set, it will return the remote device name. Setting an empty string as alias will convert it back to the remote device name. When reseting the alias with an empty string, the emitted PropertyChanged signal will show the remote name again. array{object} Nodes [readonly] List of device node object paths. object Adapter [readonly] The object path of the adpater the device belongs to. boolean LegacyPairing [readonly] Set to true if the device only supports the pre-2.1 pairing mechanism. This property is useful in the Adapter.DeviceFound signal to anticipate whether legacy or secure simple pairing will occur. Note that this property can exhibit false-positives in the case of Bluetooth 2.1 (or newer) devices that have disabled Extend Inquiry Response support.