1 BlueZ D-Bus Device API description
2 **********************************
4 Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org>
5 Copyright (C) 2005-2006 Johan Hedberg <johan.hedberg@nokia.com>
6 Copyright (C) 2005-2006 Claudio Takahasi <claudio.takahasi@indt.org.br>
7 Copyright (C) 2006-2007 Luiz von Dentz <luiz.dentz@indt.org.br>
14 Interface org.bluez.Device
15 Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX
17 Methods dict GetProperties()
19 Returns all properties for the device. See the
20 properties section for available properties.
22 Possible Errors: org.bluez.Error.DoesNotExist
23 org.bluez.Error.InvalidArguments
25 void SetProperty(string name, variant value)
27 Changes the value of the specified property. Only
28 properties that are listed a read-write are changeable.
29 On success this will emit a PropertyChanged signal.
31 Possible Errors: org.bluez.Error.DoesNotExist
32 org.bluez.Error.InvalidArguments
34 dict DiscoverServices(string pattern)
36 This method starts the service discovery to retrieve
37 remote service records. The pattern parameter can
38 be used to specify specific UUIDs. And empty string
39 will look for the public browse group.
41 The return value is a dictionary with the record
42 handles as keys and the service record in XML format
43 as values. The key is uint32 and the value a string
46 Possible errors: org.bluez.Error.NotReady
47 org.bluez.Error.Failed
48 org.bluez.Error.InProgress
50 void CancelDiscovery()
52 This method will cancel any previous DiscoverServices
55 Possible errors: org.bluez.Error.NotReady
56 org.bluez.Error.Failed
57 org.bluez.Error.NotAuthorized
61 This method disconnects a specific remote device by
62 terminating the low-level ACL connection. The use of
63 this method should be restricted to administrator
66 A DisconnectRequested signal will be sent and the
67 actual disconnection will only happen 2 seconds later.
68 This enables upper-level applications to terminate
69 their connections gracefully before the ACL connection
72 Possible errors: org.bluez.Error.NotConnected
74 array{object} ListNodes()
76 Returns list of device node object paths.
78 Possible errors: org.bluez.Error.InvalidArguments
79 org.bluez.Error.Failed
80 org.bluez.Error.OutOfMemory
82 object CreateNode(string uuid)
84 Creates a persistent device node binding with a
85 remote device. The actual support for the specified
86 UUID depends if the device driver has support for
87 persistent binding. At the moment only RFCOMM TTY
90 Possible errors: org.bluez.Error.InvalidArguments
91 org.bluez.Error.NotSupported
93 void RemoveNode(object node)
95 Removes a persistent device node binding.
97 Possible errors: org.bluez.Error.InvalidArguments
98 org.bluez.Error.DoesNotExist
100 Signals PropertyChanged(string name, variant value)
102 This signal indicates a changed value of the given
105 DisconnectRequested()
107 This signal will be sent when a low level
108 disconnection to a remote device has been requested.
109 The actual disconnection will happen 2 seconds later.
111 NodeCreated(object node)
113 Parameter is object path of created device node.
115 NodeRemoved(object node)
117 Parameter is object path of removed device node.
119 Properties string Address [readonly]
121 The Bluetooth device address of the remote device.
123 string Name [readonly]
125 The Bluetooth remote name. This value can not be
126 changed. Use the Alias property instead.
128 uint16 Vendor [readonly]
130 Vendor unique numeric identifier.
132 uint16 VendorSource [readonly]
134 Vendor source numeric identifier.
136 uint16 Product [readonly]
138 Product unique numeric identifier.
140 uint16 Version [readonly]
142 Version unique numeric identifier.
144 string Icon [readonly]
146 Proposed icon name according to the freedesktop.org
147 icon naming specification.
149 uint32 Class [readonly]
151 The Bluetooth class of device of the remote device.
153 array{string} UUIDs [readonly]
155 List of 128-bit UUIDs that represents the available
158 array{object} Services [readonly]
160 List of characteristics based services.
162 boolean Paired [readonly]
164 Indicates if the remote device is paired.
166 boolean Connected [readonly]
168 Indicates if the remote device is currently connected.
169 A PropertyChanged signal indicate changes to this
172 boolean Trusted [readwrite]
174 Indicates if the remote is seen as trusted. This
175 setting can be changed by the application.
177 boolean Blocked [readwrite]
179 If set to true any incoming connections from the
180 device will be immediately rejected. Any device
181 drivers will also be removed and no new ones will
182 be probed as long as the device is blocked.
184 string Alias [readwrite]
186 The name alias for the remote device. The alias can
187 be used to have a different friendly name for the
190 In case no alias is set, it will return the remote
191 device name. Setting an empty string as alias will
192 convert it back to the remote device name.
194 When resetting the alias with an empty string, the
195 emitted PropertyChanged signal will show the remote
198 array{object} Nodes [readonly]
200 List of device node object paths.
202 object Adapter [readonly]
204 The object path of the adapter the device belongs to.
206 boolean LegacyPairing [readonly]
208 Set to true if the device only supports the pre-2.1
209 pairing mechanism. This property is useful in the
210 Adapter.DeviceFound signal to anticipate whether
211 legacy or simple pairing will occur.
213 Note that this property can exhibit false-positives
214 in the case of Bluetooth 2.1 (or newer) devices that
215 have disabled Extended Inquiry Response support.