Home | History | Annotate | Download | only in doc
      1 BlueZ D-Bus Audio API description
      2 *********************************
      3 
      4 Copyright (C) 2004-2010  Marcel Holtmann <marcel (a] holtmann.org>
      5 Copyright (C) 2005-2007  Johan Hedberg <johan.hedberg (a] nokia.com>
      6 Copyright (C) 2005-2006  Brad Midgley <bmidgley (a] xmission.com>
      7 
      8 Audio hierarchy
      9 ===============
     10 
     11 Service		org.bluez
     12 Interface	org.bluez.Audio
     13 Object path	[variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX
     14 
     15 This is a generic audio interface that abstracts the different audio profiles.
     16 
     17 Methods		void Connect()
     18 
     19 			Connect all supported audio profiles on the device.
     20 
     21 		void Disconnect()
     22 
     23 			Disconnect all audio profiles on the device
     24 
     25 		dict GetProperties()
     26 
     27 			Returns all properties for the interface. See the
     28 			properties section for available properties.
     29 
     30 Signals		void PropertyChanged(string name, variant value)
     31 
     32 			This signal indicates a changed value of the given
     33 			property.
     34 
     35 Properties	string State
     36 
     37 			Possible values: "disconnected", "connecting",
     38 			"connected"
     39 
     40 			"disconnected" -> "connecting"
     41 				Either an incoming or outgoing connection
     42 				attempt ongoing.
     43 
     44 			"connecting" -> "disconnected"
     45 				Connection attempt failed
     46 
     47 			"connecting" -> "connected"
     48 				Successfully connected
     49 
     50 			"connected" -> "disconnected"
     51 				Disconnected from the remote device
     52 
     53 Headset hierarchy
     54 =================
     55 
     56 Service		org.bluez
     57 Interface	org.bluez.Headset
     58 Object path	[variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX
     59 
     60 Methods		void Connect()
     61 
     62 			Connect to the HSP/HFP service on the remote device.
     63 
     64 		void Disconnect()
     65 
     66 			Disconnect from the HSP/HFP service on the remote
     67 			device.
     68 
     69 		boolean IsConnected() {deprecated}
     70 
     71 			Returns TRUE if there is a active connection to the
     72 			HSP/HFP connection on the remote device.
     73 
     74 		void IndicateCall()
     75 
     76 			Indicate an incoming call on the headset
     77 			connected to the stream. Will continue to
     78 			ring the headset about every 3 seconds.
     79 
     80 		void CancelCall()
     81 
     82 			Cancel the incoming call indication.
     83 
     84 		void Play()
     85 
     86 			Open the audio connection to the headset.
     87 
     88 		void Stop()
     89 
     90 			Close the audio connection.
     91 
     92 		boolean IsPlaying() {deprecated}
     93 
     94 			Returns true if an audio connection to the headset
     95 			is active.
     96 
     97 		uint16 GetSpeakerGain() {deprecated}
     98 
     99 			Returns the current speaker gain if available,
    100 			otherwise returns the error NotAvailable.
    101 
    102 		uint16 GetMicrophoneGain() {deprecated}
    103 
    104 			Returns the current microphone gain if available,
    105 			otherwise returns the error NotAvailable.
    106 
    107 		void SetSpeakerGain(uint16 gain) {deprecated}
    108 
    109 			Changes the current speaker gain if possible.
    110 
    111 		void SetMicrophoneGain(uint16 gain) {deprecated}
    112 
    113 			Changes the current speaker gain if possible.
    114 
    115 		dict GetProperties()
    116 
    117 			Returns all properties for the interface. See the
    118 			properties section for available properties.
    119 
    120 			Possible Errors: org.bluez.Error.InvalidArguments
    121 
    122 		void SetProperty(string name, variant value)
    123 
    124 			Changes the value of the specified property. Only
    125 			properties that are listed a read-write are changeable.
    126 			On success this will emit a PropertyChanged signal.
    127 
    128 			Possible Errors: org.bluez.Error.DoesNotExist
    129 					 org.bluez.Error.InvalidArguments
    130 
    131 Signals		void AnswerRequested()
    132 
    133 			Sent when the answer button is pressed on the headset
    134 
    135 		void Connected() {deprecated}
    136 
    137 			Sent when the device has been connected to.
    138 
    139 		void Disconnected() {deprecated}
    140 
    141 			Sent when the device has been disconnected from.
    142 
    143 		void Stopped() {deprecated}
    144 
    145 			Sent when the audio connection is closed
    146 
    147 		void Playing() {deprecated}
    148 
    149 			Sent when the audio connection is opened
    150 
    151 		void SpeakerGainChanged(uint16 gain) {deprecated}
    152 
    153 			The speaker gain changed.
    154 
    155 		void MicrophoneGainChanged(uint16 gain) {deprecated}
    156 
    157 			The microphone gain changed.
    158 
    159 		PropertyChanged(string name, variant value)
    160 
    161 			This signal indicates a changed value of the given
    162 			property.
    163 
    164 properties	string State [readonly]
    165 
    166 			Possible values: "disconnected", "connecting",
    167 			"connected", "playing"
    168 
    169 			"disconnected" -> "connecting"
    170 				Either an incoming or outgoing connection
    171 				attempt ongoing.
    172 
    173 			"connecting" -> "disconnected"
    174 				Connection attempt failed
    175 
    176 			"connecting" -> "connected"
    177 				Successfully connected
    178 
    179 			"connected" -> "playing"
    180 				SCO audio connection successfully opened
    181 
    182 			"playing" -> "connected"
    183 				SCO audio connection closed
    184 
    185 			"connected" -> "disconnected"
    186 			"playing" -> "disconnected"
    187 				Disconnected from the remote device
    188 
    189 		boolean Connected [readonly]
    190 
    191 			Indicates if there is a active connection to the
    192 			HSP/HFP connection on the remote device.
    193 
    194 		boolean Playing  [readonly]
    195 
    196 			Indicates if an audio connection to the headset
    197 			is active.
    198 
    199 		uint16 SpeakerGain  [readwrite]
    200 
    201 			The speaker gain when available.
    202 
    203 		uint16 MicrophoneGain  [readwrite]
    204 
    205 			The speaker gain when available.
    206 
    207 
    208 AudioSink hierarchy
    209 ===================
    210 
    211 Service		org.bluez
    212 Interface	org.bluez.AudioSink
    213 Object path	[variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX
    214 
    215 Methods		void Connect()
    216 
    217 			Connect and setup a stream to a A2DP sink on the
    218 			remote device.
    219 
    220 		void Disconnect()
    221 
    222 			Disconnect from the remote device.
    223 
    224 		boolean IsConnected() {deprecated}
    225 
    226 			Returns TRUE if a stream is setup to a A2DP sink on
    227 			the remote device.
    228 
    229 		dict GetProperties()
    230 
    231 			Returns all properties for the interface. See the
    232 			properties section for available properties.
    233 
    234 			Possible Errors: org.bluez.Error.InvalidArguments
    235 
    236 Signals		void Connected() {deprecated}
    237 
    238 			Sent when a successful connection has been made to the
    239 			remote A2DP Sink
    240 
    241 		void Disconnected() {deprecated}
    242 
    243 			Sent when the device has been disconnected from.
    244 
    245 		void Playing() {deprecated}
    246 
    247 			Sent when a stream with remote device is started.
    248 
    249 		void Stopped() {deprecated}
    250 
    251 			Sent when a stream with remote device is suspended.
    252 
    253 		PropertyChanged(string name, variant value)
    254 
    255 			This signal indicates a changed value of the given
    256 			property.
    257 
    258 properties	string State [readonly]
    259 
    260 			Possible values: "disconnected", "connecting",
    261 			"connected", "playing"
    262 
    263 			"disconnected" -> "connecting"
    264 				Either an incoming or outgoing connection
    265 				attempt ongoing.
    266 
    267 			"connecting" -> "disconnected"
    268 				Connection attempt failed
    269 
    270 			"connecting" -> "connected"
    271 				Successfully connected
    272 
    273 			"connected" -> "playing"
    274 				Audio stream active
    275 
    276 			"playing" -> "connected"
    277 				Audio stream suspended
    278 
    279 			"connected" -> "disconnected"
    280 			"playing" -> "disconnected"
    281 				Disconnected from the remote device
    282 
    283 		boolean Connected [readonly]
    284 
    285 			Indicates if a stream is setup to a A2DP sink on
    286 			the remote device.
    287 
    288 		boolean Playing  [readonly]
    289 
    290 			Indicates if a stream is active to a A2DP sink on
    291 			the remote device.
    292 
    293 AudioSource hierarchy
    294 =====================
    295 
    296 Service		org.bluez
    297 Interface	org.bluez.AudioSource
    298 Object path	[variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX
    299 
    300 Methods		void Connect()
    301 
    302 			Connect and setup a stream to a A2DP source on the
    303 			remote device.
    304 
    305 		void Disconnect()
    306 
    307 			Disconnect from the remote device.
    308 
    309 		dict GetProperties()
    310 
    311 			Returns all properties for the interface. See the
    312 			properties section for available properties.
    313 
    314 			Possible Errors: org.bluez.Error.InvalidArguments
    315 
    316 Signals		PropertyChanged(string name, variant value)
    317 
    318 			This signal indicates a changed value of the given
    319 			property.
    320 
    321 properties	string State [readonly]
    322 
    323 			Possible values: "disconnected", "connecting",
    324 			"connected", "playing"
    325 
    326 			"disconnected" -> "connecting"
    327 				Either an incoming or outgoing connection
    328 				attempt ongoing.
    329 
    330 			"connecting" -> "disconnected"
    331 				Connection attempt failed
    332 
    333 			"connecting" -> "connected"
    334 				Successfully connected
    335 
    336 			"connected" -> "playing"
    337 				Audio stream active
    338 
    339 			"playing" -> "connected"
    340 				Audio stream suspended
    341 
    342 			"connected" -> "disconnected"
    343 			"playing" -> "disconnected"
    344 				Disconnected from the remote device
    345 
    346 
    347 HeadsetGateway hierarchy
    348 ========================
    349 
    350 Service		org.bluez
    351 Interface	org.bluez.HeadsetGateway
    352 Object path	[variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX
    353 
    354 This interface is available for remote devices which can function in the Audio
    355 Gateway role of the HFP profiles.
    356 
    357 Methods		void Connect()
    358 
    359 			Connect to the AG service on the remote device.
    360 
    361 		void Disconnect()
    362 
    363 			Disconnect from the AG service on the remote device
    364 
    365 		void AnswerCall()
    366 
    367 			It has to called only after Ring signal received.
    368 
    369 		void TerminateCall()
    370 
    371 			Terminate call which is running or reject an incoming
    372 			call. This has nothing with any 3-way situation incl.
    373 			RaH. Just plain old PDH.
    374 
    375 		void Call(string number)
    376 
    377 			Dial a number 'number'. No number processing is done
    378 			thus if AG would reject to dial it don't blame me :)
    379 
    380 		string GetOperatorName()
    381 
    382 			Find out the name of the currently selected network
    383 			operator by AG.
    384 
    385 		void SendDTMF(string digits)
    386 
    387 			Will send each digit in the 'digits' sequentially. Would
    388 			send nothing if there is non-dtmf digit.
    389 
    390 		string GetSubscriberNumber()
    391 
    392 			Get the voicecall subscriber number of AG
    393 
    394 		dict GetProperties()
    395 
    396 			Returns all properties for the interface. See the
    397 			properties section for available properties.
    398 
    399 Signals		void Ring(string number)
    400 
    401 			Someone's calling from 'number'.
    402 			Caller number is provided as received from AG.
    403 
    404 		void CallTerminated()
    405 
    406 			Call failed to set up. It means that we tried to call
    407 			someone or someone tried to call us but call was not
    408 			accepted.
    409 
    410 		void CallStarted()
    411 
    412 			Call set up successfully.
    413 
    414 		void CallEnded()
    415 
    416 			Call was started and now ended. In contrast with
    417 			CallTerminated where call didn't started
    418 
    419 		PropertyChanged(string name, variant value)
    420 
    421 			This signal indicates a changed value of the given
    422 			property.
    423 
    424 properties	boolean Connected [readonly]
    425 
    426 			Indicates if there is an active connection to the
    427 			AG service on the remote device.
    428 
    429 		uint16 RegistrationStatus [readonly]
    430 
    431 			Service availability indicatior of AG, where:
    432 			0 implies no service. No Home/Roam network available.
    433 			1 implies presense of service. Home/Roam network
    434 			available.
    435 
    436 		uint16 SignalStrength [readonly]
    437 
    438 			Signal strength indicator of AG, the value ranges from
    439 			0 to 5.
    440 
    441 		uint16 RoamingStatus [readonly]
    442 
    443 			Roaming status indicator of AG, where:
    444 			0 means roaming is not active
    445 			1 means a roaming is active
    446 
    447 		uint16 BatteryCharge [readonly]
    448 
    449 			Battery Charge indicator of AG, the value ranges from
    450 			0 to 5.
    451 
    452 		uint16 SpeakerGain  [readonly]
    453 
    454 			The speaker gain when available.
    455 
    456 		uint16 MicrophoneGain  [readonly]
    457 
    458 			The speaker gain when available.
    459