1BlueZ D-Bus Device API description 2********************************** 3 4Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> 5Copyright (C) 2005-2006 Johan Hedberg <johan.hedberg@nokia.com> 6Copyright (C) 2005-2006 Claudio Takahasi <claudio.takahasi@indt.org.br> 7Copyright (C) 2006-2007 Luiz von Dentz <luiz.dentz@indt.org.br> 8 9 10Device hierarchy 11================ 12 13Service org.bluez 14Interface org.bluez.Device 15Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX 16 17Methods dict GetProperties() 18 19 Returns all properties for the device. See the 20 properties section for available properties. 21 22 Possible Errors: org.bluez.Error.DoesNotExist 23 org.bluez.Error.InvalidArguments 24 25 void SetProperty(string name, variant value) 26 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. 30 31 Possible Errors: org.bluez.Error.DoesNotExist 32 org.bluez.Error.InvalidArguments 33 34 dict DiscoverServices(string pattern) 35 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. 40 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 44 for this dictionary. 45 46 Possible errors: org.bluez.Error.NotReady 47 org.bluez.Error.Failed 48 org.bluez.Error.InProgress 49 50 void CancelDiscovery() 51 52 This method will cancel any previous DiscoverServices 53 transaction. 54 55 Possible errors: org.bluez.Error.NotReady 56 org.bluez.Error.Failed 57 org.bluez.Error.NotAuthorized 58 59 void Disconnect() 60 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 64 use. 65 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 70 is terminated. 71 72 Possible errors: org.bluez.Error.NotConnected 73 74 array{object} ListNodes() 75 76 Returns list of device node object paths. 77 78 Possible errors: org.bluez.Error.InvalidArguments 79 org.bluez.Error.Failed 80 org.bluez.Error.OutOfMemory 81 82 object CreateNode(string uuid) 83 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 88 nodes are supported. 89 90 Possible errors: org.bluez.Error.InvalidArguments 91 org.bluez.Error.NotSupported 92 93 void RemoveNode(object node) 94 95 Removes a persistent device node binding. 96 97 Possible errors: org.bluez.Error.InvalidArguments 98 org.bluez.Error.DoesNotExist 99 100Signals PropertyChanged(string name, variant value) 101 102 This signal indicates a changed value of the given 103 property. 104 105 DisconnectRequested() 106 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. 110 111 NodeCreated(object node) 112 113 Parameter is object path of created device node. 114 115 NodeRemoved(object node) 116 117 Parameter is object path of removed device node. 118 119Properties string Address [readonly] 120 121 The Bluetooth device address of the remote device. 122 123 string Name [readonly] 124 125 The Bluetooth remote name. This value can not be 126 changed. Use the Alias property instead. 127 128 string Icon [readonly] 129 130 Proposed icon name according to the freedesktop.org 131 icon naming specification. 132 133 uint32 Class [readonly] 134 135 The Bluetooth class of device of the remote device. 136 137 array{string} UUIDs [readonly] 138 139 List of 128-bit UUIDs that represents the available 140 remote services. 141 142 boolean Paired [readonly] 143 144 Indicates if the remote device is paired. 145 146 boolean Connected [readonly] 147 148 Indicates if the remote device is currently connected. 149 A PropertyChanged signal indicate changes to this 150 status. 151 152 boolean Trusted [readwrite] 153 154 Indicates if the remote is seen as trusted. This 155 setting can be changed by the application. 156 157 boolean Blocked [readwrite] 158 159 If set to true any incoming connections from the 160 device will be immediately rejected. Any device 161 drivers will also be removed and no new ones will 162 be probed as long as the device is blocked. 163 164 string Alias [readwrite] 165 166 The name alias for the remote device. The alias can 167 be used to have a different friendly name for the 168 remote device. 169 170 In case no alias is set, it will return the remote 171 device name. Setting an empty string as alias will 172 convert it back to the remote device name. 173 174 When reseting the alias with an empty string, the 175 emitted PropertyChanged signal will show the remote 176 name again. 177 178 array{object} Nodes [readonly] 179 180 List of device node object paths. 181 182 object Adapter [readonly] 183 184 The object path of the adpater the device belongs to. 185 186 boolean LegacyPairing [readonly] 187 188 Set to true if the device only supports the pre-2.1 189 pairing mechanism. This property is useful in the 190 Adapter.DeviceFound signal to anticipate whether 191 legacy or simple pairing will occur. 192 193 Note that this property can exhibit false-positives 194 in the case of Bluetooth 2.1 (or newer) devices that 195 have disabled Extended Inquiry Response support. 196