summaryrefslogtreecommitdiff
path: root/doc/adapter-api.txt
blob: 552799380a8410a9c639c88619ef9841b6586d1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
BlueZ D-Bus Adapter API description
***********************************


Adapter hierarchy
=================

Service		org.bluez
Interface	org.bluez.Adapter1
Object path	[variable prefix]/{hci0,hci1,...}

Methods		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 creating Device objects as
			new devices are discovered.

			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

#ifdef __TIZEN_PATCH__
		void StartCustomDiscovery(string pattern)

			This method starts the device discovery session with
			parameter. The valid paramter strings are "BREDR",
			"LE" or "LE_BREDR" which will perform the inquiry for
			appropriate types. This includes an inquiry procedure
			and remote device name resolving. Use StopDiscovery
			to release the sessions acquired.

			This process will start creating Device objects as
			new devices are discovered.

			Possible errors: org.bluez.Error.NotReady
					 org.bluez.Error.Failed

		void StartLEDiscovery()

			This method starts the LE device discovery session.
			General discovery and active scan is default.
			Use StopLEDiscovery to release the sessions
			acquired.

			This process will start emitting DeviceFound and
			PropertyChanged "LEDiscovering" signals.

			Possible errors: org.bluez.Error.NotReady
					 org.bluez.Error.Failed

		void StopLEDiscovery()

			This method will cancel any previous StartLEDiscovery
			transaction.

			Note that a discovery procedure is shared between all
			discovery sessions thus calling StopLEDiscovery will only
			release a single session.

			Possible errors: org.bluez.Error.NotReady
					 org.bluez.Error.Failed
					 org.bluez.Error.NotAuthorized

		void SetAdvertising(boolean enable)

			This method is used to set LE advertising on a
			controller that supports it.

			This process will emit PropertyChanged "Advertising"
			signal.

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.InvalidArguments
					org.bluez.Error.Failed

		void SetAdvertisingParameters(uint32 interval_min,
						uint32 interval_max, uint32 filter_policy,
						uint32 type)

			This method allows for setting the Low Energy
			advertising interval and advertising filter policy.
			It is only supported on controller with LE support.

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.Failed

		void SetAdvertisingData(array{byte} value)

			This method is used to set LE advertising data on a
			controller that supports it.

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.InvalidArguments
					org.bluez.Error.Failed

		void SetScanParameters(uint32 type, uint32 interval, uint32 window)

			This method allows for setting the Low Energy
			scan interval and window.
			It is only supported on controller with LE support.

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.Failed

		void SetScanRespData(array{byte} value)

			This method is used to set LE scan response data on
			a controller that supports it.

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.InvalidArguments
					org.bluez.Error.Failed

		void AddDeviceWhiteList(string address, uint32 address_type)

			This method is used to add LE device to White List for given
			address.

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.InvalidArguments
					org.bluez.Error.Failed

		void RemoveDeviceWhiteList(string address, uint32 address_type)

			This method is used to remove LE device to White List for given
			address.

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.InvalidArguments
					org.bluez.Error.Failed

		void ClearDeviceWhiteList()

			This method is used to clear LE device to White List

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.Failed

		void SetLePrivacy(boolean enable_privacy)

			This method is used to set/reset LE privacy feature for the local
			adapter when it supports the feature.

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.InvalidArguments
					org.bluez.Error.Failed

		void SetManufacturerData(array{byte} value)

			This method is used to set Manufacturer data on a
			controller that supports it.

			Possible errors: org.bluez.Error.NotReady
					org.bluez.Error.InvalidArguments
					org.bluez.Error.Failed

		void CreateDevice(string address)

			Creates a new object path for a remote device. This
			method will connect to the remote device and retrieve
			all SDP records.

			Possible errors: org.bluez.Error.InvalidArguments
#endif

		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

Properties	string Address [readonly]

			The Bluetooth device address.

		string Name [readonly]

			The Bluetooth system name (pretty hostname).

			This property is either a static system default
			or controlled by an external daemon providing
			access to the pretty hostname configuration.

		string Alias [readwrite]

			The Bluetooth friendly name. This value can be
			changed.

			In case no alias is set, it will return the system
			provided name. Setting an empty string as alias will
			convert it back to the system provided name.

			When resetting the alias with an empty string, the
			property will default back to system name.

			On a well configured system, this property never
			needs to be changed since it defaults to the system
			name and provides the pretty hostname. Only if the
			local name needs to be different from the pretty
			hostname, this property should be used as last
			resort.

		uint32 Class [readonly]

			The Bluetooth class of device.

			This property represents the value that is either
			automatically configured by DMI/ACPI information
			or provided as static configuration.

		boolean Powered [readwrite]

			Switch an adapter on or off. This will also set the
			appropriate connectable state of the controller.

			The value of this property is not persistent. After
			restart or unplugging of the adapter it will reset
			back to false.

		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.

			For any new adapter this settings defaults to false.

		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.

			For any new adapter this settings defaults to true.

		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.

			The default value for pairable timeout should be
			disabled (value 0).

		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{string} UUIDs [readonly]

			List of 128-bit UUIDs that represents the available
			local services.

		string Modalias [readonly, optional]

			Local Device ID information in modalias format
			used by the kernel and udev.
#ifdef __TIZEN_PATCH__
		boolean LEDiscovering [readonly]

			Indicates that a device LE discovery procedure is active.

		string Version [readonly]

			 The Bluetooth version.
#endif