From 799757ccf1d03c33c75bc597cd5ef77741dcb6a7 Mon Sep 17 00:00:00 2001 From: Adrian Bunk Date: Fri, 3 Jun 2011 09:17:04 +0000 Subject: Imported upstream 4.91 --- doc/adapter-api.txt | 286 +++++++++++++++++++++++++++++ doc/agent-api.txt | 91 ++++++++++ doc/assigned-numbers.txt | 23 +++ doc/attribute-api.txt | 164 +++++++++++++++++ doc/audio-api.txt | 458 +++++++++++++++++++++++++++++++++++++++++++++++ doc/control-api.txt | 142 +++++++++++++++ doc/device-api.txt | 199 ++++++++++++++++++++ doc/health-api.txt | 166 +++++++++++++++++ doc/hfp-api.txt | 86 +++++++++ doc/input-api.txt | 44 +++++ doc/manager-api.txt | 74 ++++++++ doc/media-api.txt | 165 +++++++++++++++++ doc/network-api.txt | 88 +++++++++ doc/sap-api.txt | 34 ++++ doc/serial-api.txt | 41 +++++ doc/service-api.txt | 62 +++++++ doc/version.xml.in | 1 + 17 files changed, 2124 insertions(+) create mode 100644 doc/adapter-api.txt create mode 100644 doc/agent-api.txt create mode 100644 doc/assigned-numbers.txt create mode 100644 doc/attribute-api.txt create mode 100644 doc/audio-api.txt create mode 100644 doc/control-api.txt create mode 100644 doc/device-api.txt create mode 100644 doc/health-api.txt create mode 100644 doc/hfp-api.txt create mode 100644 doc/input-api.txt create mode 100644 doc/manager-api.txt create mode 100644 doc/media-api.txt create mode 100644 doc/network-api.txt create mode 100644 doc/sap-api.txt create mode 100644 doc/serial-api.txt create mode 100644 doc/service-api.txt create mode 100644 doc/version.xml.in (limited to 'doc') diff --git a/doc/adapter-api.txt b/doc/adapter-api.txt new file mode 100644 index 0000000..f34d58f --- /dev/null +++ b/doc/adapter-api.txt @@ -0,0 +1,286 @@ +BlueZ D-Bus Adapter API description +*********************************** + +Copyright (C) 2004-2010 Marcel Holtmann +Copyright (C) 2005-2006 Johan Hedberg +Copyright (C) 2005-2006 Claudio Takahasi +Copyright (C) 2006-2007 Luiz von Dentz + + +Adapter hierarchy +================= + +Service org.bluez +Interface org.bluez.Adapter +Object path [variable prefix]/{hci0,hci1,...} + +Methods dict GetProperties() + + Returns all properties for the adapter. See the + properties section for available properties. + + Possible Errors: org.bluez.Error.NotReady + + 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.InvalidArguments + + void RequestSession() + + This method requests a client session that provides + operational Bluetooth. A possible mode change must be + confirmed by the user via the agent. + + Clients may request multiple sessions. All sessions + are released when adapter's mode is changed to off + state. + + Possible Errors: org.bluez.Error.Rejected + + void ReleaseSession() + + Release a previously requested session. It sets + adapter to the mode in use on the moment of session + request. + + SetProperty method call changes adapter's mode + persistently, such that session release will not + modify it. + + Possible Errors: org.bluez.Error.DoesNotExist + + 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 emitting DeviceFound and + PropertyChanged "Discovering" signals. + + 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 + + object FindDevice(string address) + + Returns the object path of device for given address. + The device object needs to be first created via + CreateDevice or CreatePairedDevice. + + Possible Errors: org.bluez.Error.DoesNotExist + org.bluez.Error.InvalidArguments + + array{object} ListDevices() {deprecated} + + Returns list of device object paths. + This method is deprecated, instead use the Devices + Property to get the list of devices object paths. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.Failed + org.bluez.Error.OutOfMemory + + object 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. + + If the object for the remote device already exists + this method will fail. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.Failed + + object CreatePairedDevice(string address, object agent, + string capability) + + Creates a new object path for a remote device. This + method will connect to the remote device and retrieve + all SDP records and then initiate the pairing. + + If previously CreateDevice was used successfully, + this method will only initiate the pairing. + + Compared to CreateDevice this method will fail if + the pairing already exists, but not if the object + path already has been created. This allows applications + to use CreateDevice first and the if needed use + CreatePairedDevice to initiate pairing. + + The agent object path is assumed to reside within the + process (D-Bus connection instance) that calls this + method. No separate registration procedure is needed + for it and it gets automatically released once the + pairing operation is complete. + + The capability parameter is the same as for the + RegisterAgent method. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.Failed + + void CancelDeviceCreation(string address) + + Aborts either a CreateDevice call or a + CreatePairedDevice call. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NotInProgress + + 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 + + void RegisterAgent(object agent, string capability) + + This registers the adapter wide agent. + + The object path defines the path of the agent + that will be called when user input is needed. + + If an application disconnects from the bus all + of its registered agents will be removed. + + The capability parameter can have the values + "DisplayOnly", "DisplayYesNo", "KeyboardOnly" and + "NoInputNoOutput" which reflects the input and output + capabilities of the agent. If an empty string is + used it will fallback to "DisplayYesNo". + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.AlreadyExists + + void UnregisterAgent(object agent) + + This unregisters the agent that has been previously + registered. The object path parameter must match the + same value that has been used on registration. + + Possible errors: org.bluez.Error.DoesNotExist + +Signals PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + + DeviceFound(string address, dict values) + + This signal will be sent every time an inquiry result + has been found by the service daemon. In general they + only appear during a device discovery. + + The dictionary can contain basically the same values + that are returned by the GetProperties method + from the org.bluez.Device interface. In addition there + can be values for the RSSI, the TX power level and + Broadcaster role. + + DeviceDisappeared(string address) + + This signal will be sent when an inquiry session for + a periodic discovery finishes and previously found + devices are no longer in range or visible. + + DeviceCreated(object device) + + Parameter is object path of created device. + + DeviceRemoved(object device) + + Parameter is object path of removed device. + +Properties string Address [readonly] + + The Bluetooth device address. + + string Name [readwrite] + + The Bluetooth friendly name. This value can be + changed and a PropertyChanged signal will be emitted. + + uint32 Class [readonly] + + The Bluetooth class of device. + + boolean Powered [readwrite] + + Switch an adapter on or off. This will also set the + appropiate connectable state. + + 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. + + 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. + + uint32 PaireableTimeout [readwrite] + + The pairable timeout in seconds. A value of zero + means that the timeout is disabled and it will stay in + pareable mode forever. + + 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{object} Devices [readonly] + + List of device object paths. + + array{string} UUIDs [readonly] + + List of 128-bit UUIDs that represents the available + local services. diff --git a/doc/agent-api.txt b/doc/agent-api.txt new file mode 100644 index 0000000..d8d35c0 --- /dev/null +++ b/doc/agent-api.txt @@ -0,0 +1,91 @@ +BlueZ D-Bus Agent API description +********************************** + +Copyright (C) 2004-2010 Marcel Holtmann +Copyright (C) 2005-2006 Johan Hedberg + + +Agent hierarchy +=============== + +Service unique name +Interface org.bluez.Agent +Object path freely definable + +Methods void Release() + + This method gets called when the service daemon + unregisters the agent. An agent can use it to do + cleanup tasks. There is no need to unregister the + agent, because when this method gets called it has + already been unregistered. + + string RequestPinCode(object device) + + This method gets called when the service daemon + needs to get the passkey for an authentication. + + The return value should be a string of 1-16 characters + length. The string can be alphanumeric. + + Possible errors: org.bluez.Error.Rejected + org.bluez.Error.Canceled + + uint32 RequestPasskey(object device) + + This method gets called when the service daemon + needs to get the passkey for an authentication. + + The return value should be a numeric value + between 0-999999. + + Possible errors: org.bluez.Error.Rejected + org.bluez.Error.Canceled + + void DisplayPasskey(object device, uint32 passkey, uint8 entered) + + This method gets called when the service daemon + needs to display a passkey for an authentication. + + The entered parameter indicates the number of already + typed keys on the remote side. + + An empty reply should be returned. When the passkey + needs no longer to be displayed, the Cancel method + of the agent will be called. + + During the pairing process this method might be + called multiple times to update the entered value. + + void RequestConfirmation(object device, uint32 passkey) + + This method gets called when the service daemon + needs to confirm a passkey for an authentication. + + To confirm the value it should return an empty reply + or an error in case the passkey is invalid. + + Possible errors: org.bluez.Error.Rejected + org.bluez.Error.Canceled + + void Authorize(object device, string uuid) + + This method gets called when the service daemon + needs to authorize a connection/service request. + + Possible errors: org.bluez.Error.Rejected + org.bluez.Error.Canceled + + void ConfirmModeChange(string mode) + + This method gets called if a mode change is requested + that needs to be confirmed by the user. An example + would be leaving flight mode. + + Possible errors: org.bluez.Error.Rejected + org.bluez.Error.Canceled + + void Cancel() + + This method gets called to indicate that the agent + request failed before a reply was returned. diff --git a/doc/assigned-numbers.txt b/doc/assigned-numbers.txt new file mode 100644 index 0000000..cda934c --- /dev/null +++ b/doc/assigned-numbers.txt @@ -0,0 +1,23 @@ +RFCOMM Channels +=============== + +Since there are a limited amount of possible RFCOMM channels (1-31) +they've been pre-allocated for currently known profiles in order to +avoid conflicts. + +Profile Channel +----------------------- +DUN 1 +HFP HF 7 +OPP 9 +FTP 10 +BIP 11 +HSP AG 12 +HFP AG 13 +SYNCH (IrMC) 14 +PBAP 15 +MAP 16 +SyncEvolution 19 +PC/Ovi Suite 24 +SyncML Client 25 +SyncML Server 26 diff --git a/doc/attribute-api.txt b/doc/attribute-api.txt new file mode 100644 index 0000000..f2778f3 --- /dev/null +++ b/doc/attribute-api.txt @@ -0,0 +1,164 @@ +BlueZ D-Bus Attribute API description +************************************* + +Copyright (C) 2004-2010 Marcel Holtmann + +Service details +--------------- + +One service object path for every remote SDP record or service in the +attribute database. One service object path for every local SDP record +or service from attribute database. + +Local services are children of the adapter object path. Remote services +are children of the remote device object path. This doesn't solve the +problem where local atttributes can have different instances based on +the remote device. + +In general the idea is to also represent SDP records as services so that +new style application can just use the service interfaces to retrieve the +needed information. That way the usage of SDP and GATT would be mostly +fully transparent and a differentiation becomes unimportant in the future. + +A service consists of some generic service information and a set of +characteristics. All characteristic are presented as object path as well. + + +Local Service hierarchy +======================= + +Service org.bluez +Interface org.bluez.Service + org.bluez.Characteristic +Object path [prefix]/{hci0}/{service0, service1, ...} + +Methods + +Properties + + +Device Service hierarchy +======================== + +Service org.bluez +Interface org.bluez.Characteristic +Object path [prefix]/{hci0}/{device0}/{service0, service1, ...} + [prefix]/{hci0}/{device1}/{service0, service1, ...} + +Methods dict GetProperties() + + Returns all properties for the interface. See the + Properties section for the available properties. + + array{object} DiscoverCharacteristics() + + Discover all characteristics that belongs in this service. + When it returns all the characteristics paths will be + already registered. It will return the characteristics paths + as soon as they are discovered. After that it will try to + read all values. + + RegisterCharacteristicsWatcher(object agent) + + Register a watcher to monitor characteristic changes. + + A watcher will be registered for this service and will + notify about any changed characteristics in the service. + This also notifies about any included characteristics. + + UnregisterCharacteristicsWatcher(object agent) + + Unregister a watcher. + +Properties string Name (mandatory) [readonly] + + General name of service + + string Description (optional) [readonly] + + Description of service + + string UUID (mandatory) [readonly] + + UUID of service. Service class value for SDP and GATT + UUID for attribute based services. + + array{object} Characteristics [readonly] + + This list contains the characteristics owned by this + specific service and other characteristics from service + includes. That way no complicated service includes array + is needed. + + +Device Characteristic hierarchy +=============================== + +Service org.bluez +Interface org.bluez.Characteristic +Object path [prefix]/{hci0}/{device0}/{service0}/{characteristic0,...} + [prefix]/{hci0}/{device0}/{service1}/{characteristic0,...} + +Methods dict GetProperties() + + Returns all properties for the characteristic. See the + properties section for available properties. + + void SetProperty(string name, variant value) + + Changes the value of the specified property. Only + read-write properties can be changed. On success + this will emit a PropertyChanged signal. + + Possible Errors: org.bluez.Error.InvalidArguments + +Properties string UUID [readonly] + + UUID128 of this characteristic. + + string Name [readonly] + + Optional field containing a friendly name for the + Characteristic UUID. + + string Description [readonly] + + Textual optional characteristic descriptor describing + the Characteristic Value. + + struct Format [readonly] + + Optional Characteristic descriptor which defines the + format of the Characteristic Value. For numeric + values, the actual value can be value * 10^Exponent. + NameSpace and Description are defined on the Assigned + Number Specification. + + uint8 | Format: format of the value + uint8 | Exponent: Field to determine how the value is + | further formatted. + uint16 | Unit: unit of the characteristic + uint8 | NameSpace: Name space of description. + uint16 | Description: Description of the characteristic defined + | in a high layer profile. + + array{byte} Value [readwrite] + + Raw value of the Characteristic Value attribute. + + string Representation (of the binary Value) [readonly] + + Friendly representation of the Characteristic Value + based on the format attribute. + + +Characteristic Watcher hierarchy +=============================== + +Service unique name +Interface org.bluez.Watcher +Object path freely definable + +Methods void ValueChanged(object characteristic, array{byte}) + + New raw value of the Characteristic Value attribute. diff --git a/doc/audio-api.txt b/doc/audio-api.txt new file mode 100644 index 0000000..e7991f3 --- /dev/null +++ b/doc/audio-api.txt @@ -0,0 +1,458 @@ +BlueZ D-Bus Audio API description +********************************* + +Copyright (C) 2004-2010 Marcel Holtmann +Copyright (C) 2005-2007 Johan Hedberg +Copyright (C) 2005-2006 Brad Midgley + +Audio hierarchy +=============== + +Service org.bluez +Interface org.bluez.Audio +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +This is a generic audio interface that abstracts the different audio profiles. + +Methods void Connect() + + Connect all supported audio profiles on the device. + + void Disconnect() + + Disconnect all audio profiles on the device + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + +Signals void PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties string State + + Possible values: "disconnected", "connecting", + "connected" + + "disconnected" -> "connecting" + Either an incoming or outgoing connection + attempt ongoing. + + "connecting" -> "disconnected" + Connection attempt failed + + "connecting" -> "connected" + Successfully connected + + "connected" -> "disconnected" + Disconnected from the remote device + +Headset hierarchy +================= + +Service org.bluez +Interface org.bluez.Headset +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods void Connect() + + Connect to the HSP/HFP service on the remote device. + + void Disconnect() + + Disconnect from the HSP/HFP service on the remote + device. + + boolean IsConnected() {deprecated} + + Returns TRUE if there is a active connection to the + HSP/HFP connection on the remote device. + + void IndicateCall() + + Indicate an incoming call on the headset + connected to the stream. Will continue to + ring the headset about every 3 seconds. + + void CancelCall() + + Cancel the incoming call indication. + + void Play() + + Open the audio connection to the headset. + + void Stop() + + Close the audio connection. + + boolean IsPlaying() {deprecated} + + Returns true if an audio connection to the headset + is active. + + uint16 GetSpeakerGain() {deprecated} + + Returns the current speaker gain if available, + otherwise returns the error NotAvailable. + + uint16 GetMicrophoneGain() {deprecated} + + Returns the current microphone gain if available, + otherwise returns the error NotAvailable. + + void SetSpeakerGain(uint16 gain) {deprecated} + + Changes the current speaker gain if possible. + + void SetMicrophoneGain(uint16 gain) {deprecated} + + Changes the current speaker gain if possible. + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + Possible Errors: 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 + +Signals void AnswerRequested() + + Sent when the answer button is pressed on the headset + + void Connected() {deprecated} + + Sent when the device has been connected to. + + void Disconnected() {deprecated} + + Sent when the device has been disconnected from. + + void Stopped() {deprecated} + + Sent when the audio connection is closed + + void Playing() {deprecated} + + Sent when the audio connection is opened + + void SpeakerGainChanged(uint16 gain) {deprecated} + + The speaker gain changed. + + void MicrophoneGainChanged(uint16 gain) {deprecated} + + The microphone gain changed. + + PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +properties string State [readonly] + + Possible values: "disconnected", "connecting", + "connected", "playing" + + "disconnected" -> "connecting" + Either an incoming or outgoing connection + attempt ongoing. + + "connecting" -> "disconnected" + Connection attempt failed + + "connecting" -> "connected" + Successfully connected + + "connected" -> "playing" + SCO audio connection successfully opened + + "playing" -> "connected" + SCO audio connection closed + + "connected" -> "disconnected" + "playing" -> "disconnected" + Disconnected from the remote device + + boolean Connected [readonly] + + Indicates if there is a active connection to the + HSP/HFP connection on the remote device. + + boolean Playing [readonly] + + Indicates if an audio connection to the headset + is active. + + uint16 SpeakerGain [readwrite] + + The speaker gain when available. + + uint16 MicrophoneGain [readwrite] + + The speaker gain when available. + + +AudioSink hierarchy +=================== + +Service org.bluez +Interface org.bluez.AudioSink +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods void Connect() + + Connect and setup a stream to a A2DP sink on the + remote device. + + void Disconnect() + + Disconnect from the remote device. + + boolean IsConnected() {deprecated} + + Returns TRUE if a stream is setup to a A2DP sink on + the remote device. + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + Possible Errors: org.bluez.Error.InvalidArguments + +Signals void Connected() {deprecated} + + Sent when a successful connection has been made to the + remote A2DP Sink + + void Disconnected() {deprecated} + + Sent when the device has been disconnected from. + + void Playing() {deprecated} + + Sent when a stream with remote device is started. + + void Stopped() {deprecated} + + Sent when a stream with remote device is suspended. + + PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +properties string State [readonly] + + Possible values: "disconnected", "connecting", + "connected", "playing" + + "disconnected" -> "connecting" + Either an incoming or outgoing connection + attempt ongoing. + + "connecting" -> "disconnected" + Connection attempt failed + + "connecting" -> "connected" + Successfully connected + + "connected" -> "playing" + Audio stream active + + "playing" -> "connected" + Audio stream suspended + + "connected" -> "disconnected" + "playing" -> "disconnected" + Disconnected from the remote device + + boolean Connected [readonly] + + Indicates if a stream is setup to a A2DP sink on + the remote device. + + boolean Playing [readonly] + + Indicates if a stream is active to a A2DP sink on + the remote device. + +AudioSource hierarchy +===================== + +Service org.bluez +Interface org.bluez.AudioSource +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods void Connect() + + Connect and setup a stream to a A2DP source on the + remote device. + + void Disconnect() + + Disconnect from the remote device. + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + Possible Errors: org.bluez.Error.InvalidArguments + +Signals PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +properties string State [readonly] + + Possible values: "disconnected", "connecting", + "connected", "playing" + + "disconnected" -> "connecting" + Either an incoming or outgoing connection + attempt ongoing. + + "connecting" -> "disconnected" + Connection attempt failed + + "connecting" -> "connected" + Successfully connected + + "connected" -> "playing" + Audio stream active + + "playing" -> "connected" + Audio stream suspended + + "connected" -> "disconnected" + "playing" -> "disconnected" + Disconnected from the remote device + + +HeadsetGateway hierarchy +======================== + +Service org.bluez +Interface org.bluez.HeadsetGateway +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +This interface is available for remote devices which can function in the Audio +Gateway role of the HFP profiles. + +Methods void Connect() + + Connect to the AG service on the remote device. + + void Disconnect() + + Disconnect from the AG service on the remote device + + void AnswerCall() + + It has to called only after Ring signal received. + + void TerminateCall() + + Terminate call which is running or reject an incoming + call. This has nothing with any 3-way situation incl. + RaH. Just plain old PDH. + + void Call(string number) + + Dial a number 'number'. No number processing is done + thus if AG would reject to dial it don't blame me :) + + string GetOperatorName() + + Find out the name of the currently selected network + operator by AG. + + void SendDTMF(string digits) + + Will send each digit in the 'digits' sequentially. Would + send nothing if there is non-dtmf digit. + + string GetSubscriberNumber() + + Get the voicecall subscriber number of AG + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + +Signals void Ring(string number) + + Someone's calling from 'number'. + Caller number is provided as received from AG. + + void CallTerminated() + + Call failed to set up. It means that we tried to call + someone or someone tried to call us but call was not + accepted. + + void CallStarted() + + Call set up successfully. + + void CallEnded() + + Call was started and now ended. In contrast with + CallTerminated where call didn't started + + PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +properties boolean Connected [readonly] + + Indicates if there is an active connection to the + AG service on the remote device. + + uint16 RegistrationStatus [readonly] + + Service availability indicatior of AG, where: + 0 implies no service. No Home/Roam network available. + 1 implies presense of service. Home/Roam network + available. + + uint16 SignalStrength [readonly] + + Signal strength indicator of AG, the value ranges from + 0 to 5. + + uint16 RoamingStatus [readonly] + + Roaming status indicator of AG, where: + 0 means roaming is not active + 1 means a roaming is active + + uint16 BatteryCharge [readonly] + + Battery Charge indicator of AG, the value ranges from + 0 to 5. + + uint16 SpeakerGain [readonly] + + The speaker gain when available. + + uint16 MicrophoneGain [readonly] + + The speaker gain when available. diff --git a/doc/control-api.txt b/doc/control-api.txt new file mode 100644 index 0000000..1a42846 --- /dev/null +++ b/doc/control-api.txt @@ -0,0 +1,142 @@ +BlueZ D-Bus Control API description +*********************************** + +Copyright (C) 2004-2010 Marcel Holtmann +Copyright (C) 2007-2008 David Stockwell + + +Control hierarchy +================= + +Service org.bluez +Interface org.bluez.Control +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods void Connect() + + Connect to remote device (CT or TG). + + void Disconnect() + + Disconnect remote device. + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + void VolumeUp() + + Adjust remote volume one step up + + void VolumeDown() + + Adjust remote volume one step down + + boolean SendPassthrough(avc_operation_id key, boolean state, + string op_data) + + Called to send Passthrough commands. ONLY valid if + BlueZ device is in CT role. + + boolean SendVendorDependent(string op_data) + + Called to send VendorDependent commands, other than + Metadata or Events defined in the AVRCP+Metadata + specification. + + void ChangePlayback(string status, uint32 elapsed) + + The status can be "playing", "stopped", "paused", + "forward-seek", "reverse-seek" or "error". Elapsed is + the position within the track in milliseconds. + + void ChangeTrack(dict metadata) + + Called to send the mandated TrackChange event and + potential metadata information. + + Current defined metadata information are represented + with the following keys: + + Title string (mandatory) + Artist string + Album string + Genre string + NumberOfTracks uint32 + TrackNumber uint32 + TrackDuration uint32 (in milliseconds) + + void ChangeSetting(string setting, variant value) + + Called to transmit Application Settings, CT Status + and the like. + + Currenet defined settings are represented with the + following keys: + + Equalizer off, on + Repeat off, singletrack, alltracks, group + Shuffle off, alltracks, group + Scan off, alltracks, group + Battery normal, warning, critical, external, fullcharge + System powered, unpowered, unplugged + Volume uint8 + +Signals Connected() + + Sent when a successful AVRCP connection has been made + to the remote device. + + Disconnected() + + Sent when the AVRCP connection to the remote device + has been disconnected. + + Passthrough(uint8 key, boolean state, int32 company_id, + string op_data) + + Called when Passthrough command is received from + connected device. + + NOTE: according to the AV/C Subpanel Spec, company_id + and op_data are passed ONLY when the key is + "Vendor_Unique", or 0x7E. + + When the key is NOT 0x7E, the signal returns + company_id=-1, and zero-length op_data. + + VendorDependentReceived(string op_data) + + Called when VendorDependent message is received from + connected device (except for Metadata defined in + Bluetooth SIG AVRCP+Metadata spec). + + TrackChanged(dict metadata) + + Called when Metadata is received from connected device. + May be multiple meta attribute/element pairs. + + PlaybackChanged(string status, uint32 elapsed) + + SettingChanged(string setting, variant value) + +Properties uint8 SubUnitID [readonly] + + The three-bit Subunit ID from the connected device. + + uint8 SubUnitType [readonly] + + The five-bit Subunit Type from the connected device. + + boolean Connected [readonly] + + array{uint32} CompanyIDs [readonly] + + List of three-byte Company IDs (OUI) supported by the + connected device. Note that Bluetooth SIG Company + ID (0x001958) is always included. + + array{string} Capabilities [readonly] + + List of Capabilities provided by the connected device. diff --git a/doc/device-api.txt b/doc/device-api.txt new file mode 100644 index 0000000..d1feb18 --- /dev/null +++ b/doc/device-api.txt @@ -0,0 +1,199 @@ +BlueZ D-Bus Device API description +********************************** + +Copyright (C) 2004-2010 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 device. 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 specify specific UUIDs. And empty string + will look for the public browse group. + + 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. + + array{object} Services [readonly] + + List of characteristics based 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. + + boolean Blocked [readwrite] + + If set to true any incoming connections from the + device will be immediately rejected. Any device + drivers will also be removed and no new ones will + be probed as long as the device is blocked. + + 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 adapter 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 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 Extended Inquiry Response support. diff --git a/doc/health-api.txt b/doc/health-api.txt new file mode 100644 index 0000000..3d0a717 --- /dev/null +++ b/doc/health-api.txt @@ -0,0 +1,166 @@ +BlueZ D-Bus Health API description +********************************** + + Santiago Carot-Nemesio + José Antonio Santos-Cadenas + Elvis Pfützenreuter + +Health Device Profile hierarchy +=============================== + +Service org.bluez +Interface org.bluez.HealthManager +Object path /org/bluez/ + +Methods: + + object CreateApplication(dict config) + + Returns the path of the new registered application. + + Dict is defined as below: + { + "DataType": uint16, (mandatory) + "Role" : ("Source" or "Sink"), (mandatory) + "Description" : string, (optional) + "ChannelType" : ("Reliable" or "Streaming") + (just for Sources, optional) + } + + Application will be closed by the call or implicitly when the + programs leaves the bus. + + Possible errors: org.bluez.Error.InvalidArguments + + void DestroyApplication(object application) + + Closes the HDP application identified by the object path. Also + application will be closed if the process that started it leaves + the bus. Only the creator of the application will be able to + destroy it. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NotFound + org.bluez.Error.NotAllowed + +-------------------------------------------------------------------------------- + +Service org.bluez +Interface org.bluez.HealthDevice +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods: + + dict GetProperties() + + Returns all properties for the interface. See the properties + section for available properties. + + Posible errors: org.bluez.Error.NotAllowed + + Boolean Echo() + + Sends an echo petition to the remote service. Returns True if + response matches with the buffer sent. If some error is detected + False value is returned. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.OutOfRange + + object CreateChannel(object application, string configuration) + + Creates a new data channel. + The configuration should indicate the channel quality of + service using one of this values "Reliable", "Streaming", "Any". + + Returns the object path that identifies the data channel that + is already connected. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.HealthError + + void DestroyChannel(object channel) + + Destroys the data channel object. Only the creator of the + channel or the creator of the HealtApplication that received the + data channel will be able to destroy it + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NotFound + org.bluez.Error.NotAllowed + +Signals: + + void ChannelConnected(object channel) + + This signal is launched when a new data channel is created or + when a known data channel is reconnected. + + void ChannelDeleted(object channel) + + This signal is launched when a data channel is deleted. + + After this signal the data channel path will not be valid and + its path can be reused for future data channels. + + void PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given property. + +Properties: + + object MainChannel [readonly] + + The first reliable channel opened. It is needed by upper + applications in order to send specific protocol data units. The + first reliable can change after a reconnection. + +-------------------------------------------------------------------------------- + +Service org.bluez +Interface org.bluez.HealthChannel +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/chanZZZ + +Only the process that created the data channel or the creator of the +HealthApplication that received it will be able to call this methods. + +Methods: + + dict GetProperties() + + Returns all properties for the interface. See the properties + section for available properties. + + Posible errors: org.bluez.Error.NotAllowed + + fd Acquire() + + Returns the file descriptor for this data channel. If the data + channel is not connected it will also reconnect. + + Possible errors: org.bluez.Error.NotConnected + org.bluez.Error.NotAllowed + + void Release() + + Releases the fd. Application should also need to close() it. + + Possible errors: org.bluez.Error.NotAcquired + org.bluez.Error.NotAllowed + +Properties: + + string Type [readonly] + + The quality of service of the data channel. ("Reliable" or + "Streaming") + + object Device [readonly] + + Identifies the Remote Device that is connected with. Maps with + a HealthDevice object. + + object Application [readonly] + + Identifies the HealthApplication to which this channel is + related to (which indirectly defines its role and data type). diff --git a/doc/hfp-api.txt b/doc/hfp-api.txt new file mode 100644 index 0000000..93251e8 --- /dev/null +++ b/doc/hfp-api.txt @@ -0,0 +1,86 @@ +Gateway hierarchy +======================== + +Service org.bluez +Interface org.bluez.HandsfreeGateway +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +This interface is available for remote devices which can function in the Audio +Gateway role of the HFP profiles. It is intended to be used with external +telephony stacks / handlers of the HFP protocol. + +Methods void Connect() + + Connect to the AG service on the remote device. + + void Disconnect() + + Disconnect from the AG service on the remote device + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + void RegisterAgent(object path) + + The object path defines the path the of the agent + that will be called when a new Handsfree connection + is established. + + If an application disconnects from the bus all of its + registered agents will be removed. + + void UnregisterAgent(object path) + + This unregisters the agent that has been previously + registered. The object path parameter must match the + same value that has been used on registration. + + Possible Errors: org.bluez.Error.Failed + org.bluez.Error.InvalidArguments + + +Signals PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties string State [readonly] + + Indicates the state of the connection. Possible + values are: + "disconnected" + "connecting" + "connected" + "playing" + +HandsfreeAgent hierarchy +=============== + +Service unique name +Interface org.bluez.HandsfreeAgent +Object path freely definable + +Methods void NewConnection(filedescriptor fd) + + This method gets called whenever a new handsfree + connection has been established. The objectpath + contains the object path of the remote device. This + method assumes that DBus daemon with file descriptor + passing capability is being used. + + The agent should only return successfully once the + establishment of the service level connection (SLC) + has been completed. In the case of Handsfree this + means that BRSF exchange has been performed and + necessary initialization has been done. + + Possible Errors: org.bluez.Error.InvalidArguments + org.bluez.Error.Failed + + void Release() + + This method gets called whenever the service daemon + unregisters the agent or whenever the Adapter where + the HandsfreeAgent registers itself is removed. diff --git a/doc/input-api.txt b/doc/input-api.txt new file mode 100644 index 0000000..7c3a4b2 --- /dev/null +++ b/doc/input-api.txt @@ -0,0 +1,44 @@ +BlueZ D-Bus Input API description +********************************* + +Copyright (C) 2004-2010 Marcel Holtmann + + +Input hierarchy +=============== + +Service org.bluez +Interface org.bluez.Input +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods void Connect() + + Connect to the input device. + + Possible errors: org.bluez.Error.AlreadyConnected + org.bluez.Error.ConnectionAttemptFailed + + void Disconnect() + + Disconnect from the input device. + + To abort a connection attempt in case of errors or + timeouts in the client it is fine to call this method. + + Possible errors: org.bluez.Error.Failed + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + Possible Errors: org.bluez.Error.InvalidArguments + +Signals PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties boolean Connected [readonly] + + Indicates if the device is connected. diff --git a/doc/manager-api.txt b/doc/manager-api.txt new file mode 100644 index 0000000..d2c1caf --- /dev/null +++ b/doc/manager-api.txt @@ -0,0 +1,74 @@ +BlueZ D-Bus Manager API description +*********************************** + +Copyright (C) 2004-2010 Marcel Holtmann +Copyright (C) 2005-2006 Johan Hedberg +Copyright (C) 2005-2006 Claudio Takahasi +Copyright (C) 2006-2007 Luiz von Dentz + + +Manager hierarchy +================= + +Service org.bluez +Interface org.bluez.Manager +Object path / + +Methods dict GetProperties() + + Returns all global properties. See the + properties section for available properties. + + Possible Errors: org.bluez.Error.DoesNotExist + org.bluez.Error.InvalidArguments + + object DefaultAdapter() + + Returns object path for the default adapter. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NoSuchAdapter + + object FindAdapter(string pattern) + + Returns object path for the specified adapter. Valid + patterns are "hci0" or "00:11:22:33:44:55". + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NoSuchAdapter + + array{object} ListAdapters() {deprecated} + + Returns list of adapter object paths under /org/bluez. + This method is deprecated, instead use the Adapters + Property to get the list of adapter object paths. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.Failed + org.bluez.Error.OutOfMemory + +Signals PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + + AdapterAdded(object adapter) + + Parameter is object path of added adapter. + + AdapterRemoved(object adapter) + + Parameter is object path of removed adapter. + + DefaultAdapterChanged(object adapter) + + Parameter is object path of the new default adapter. + + In case all adapters are removed this signal will not + be emitted. The AdapterRemoved signal has to be used + to detect that no default adapter is selected or + available anymore. + +Properties array{object} Adapters [readonly] + + List of adapter object paths. diff --git a/doc/media-api.txt b/doc/media-api.txt new file mode 100644 index 0000000..b2f239a --- /dev/null +++ b/doc/media-api.txt @@ -0,0 +1,165 @@ +BlueZ D-Bus Media API description +********************************* + +Media hierarchy +=============== + +Service org.bluez +Interface org.bluez.Media +Object path [variable prefix]/{hci0,hci1,...} + +Methods void RegisterEndpoint(object endpoint, dict properties) + + Register a local end point to sender, the sender can + register as many end points as it likes. + + Note: If the sender disconnects the end points are + automatically unregistered. + + possible properties: + + string UUID: + + UUID of the profile which the endpoint + is for. + + byte Codec: + + Assigned mumber of codec that the + endpoint implements. The values should + match the profile specification which + is indicated by the UUID. + + array{byte} Capabilities: + + Capabilities blob, it is used as it is + so the size and byte order must match. + + Possible Errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NotSupported - emitted + when interface for the end-point is + disabled. + + void UnregisterEndpoint(object endpoint) + + Unregister sender end point. + +MediaEndpoint hierarchy +======================= + +Service unique name +Interface org.bluez.MediaEndpoint +Object path freely definable + +Methods void SetConfiguration(object transport, dict properties) + + Set configuration for the transport. + + array{byte} SelectConfiguration(array{byte} capabilities) + + Select preferable configuration from the supported + capabilities. + + Returns a configuration which can be used to setup + a transport. + + Note: There is no need to cache the selected + configuration since on success the configuration is + send back as parameter of SetConfiguration. + + void ClearConfiguration(object transport) + + Clear transport configuration. + + void Release() + + This method gets called when the service daemon + unregisters the endpoint. An endpoint can use it to do + cleanup tasks. There is no need to unregister the + endpoint, because when this method gets called it has + already been unregistered. + +MediaTransport hierarchy +======================== + +Service org.bluez +Interface org.bluez.MediaTransport +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/fdX + +Methods dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + fd, uint16, uint16 Acquire(string accesstype) + + Acquire transport file descriptor and the MTU for read + and write respectively. + + possible accesstype: + + "r" : Read only access + + "w" : Write only access + + "rw": Read and write access + + void Release(string accesstype) + + Releases file descriptor. + + void SetProperty(string name, variant value) + + Changes the value of the specified property. Only + properties that are listed a read-write can be changed. + + On success this will emit a PropertyChanged signal. + +Signals void PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties object Device [readonly] + + Device object which the transport is connected to. + + string UUID [readonly] + + UUID of the profile which the transport is for. + + byte Codec [readonly] + + Assigned mumber of codec that the transport support. + The values should match the profile specification which + is indicated by the UUID. + + array{byte} Configuration [readonly] + + Configuration blob, it is used as it is so the size and + byte order must match. + + uint16 Delay [readwrite] + + Optional. Transport delay in 1/10 of milisecond, this + property is only writeable when the transport was + acquired by the sender. + + boolean NREC [readwrite] + + Optional. Indicates if echo cancelling and noise + reduction functions are active in the transport, this + property is only writeable when the transport was + acquired by the sender. + + boolean InbandRingtone [readwrite] + + Optional. Indicates if the transport support sending + ringtones, this property is only writeable when the + transport was acquired by the sender. + + string Routing [readonly] + + Optional. Indicates where is the transport being routed + + Possible Values: "HCI" or "PCM" diff --git a/doc/network-api.txt b/doc/network-api.txt new file mode 100644 index 0000000..4dd3e58 --- /dev/null +++ b/doc/network-api.txt @@ -0,0 +1,88 @@ +BlueZ D-Bus Network API description +*********************************** + +Copyright (C) 2004-2010 Marcel Holtmann + + +Network hierarchy +================= + +Service org.bluez +Interface org.bluez.Network +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods string Connect(string uuid) + + Connect to the network device and return the network + interface name. Examples of the interface name are + bnep0, bnep1 etc. + + uuid can be either one of "gn", "panu" or "nap" (case + insensitive) or a traditional string representation of + UUID or a hexadecimal number. + + The connection will be closed and network device + released either upon calling Disconnect() or when + the client disappears from the message bus. + + Possible errors: org.bluez.Error.AlreadyConnected + org.bluez.Error.ConnectionAttemptFailed + + void Disconnect() + + Disconnect from the network device. + + To abort a connection attempt in case of errors or + timeouts in the client it is fine to call this method. + + Possible errors: org.bluez.Error.Failed + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + +Signals PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties boolean Connected [readonly] + + Indicates if the device is connected. + + string Interface [readonly] + + Indicates the network interface name when available. + + string UUID [readonly] + + Indicates the connection role when available. + + +Network server hierarchy +======================== + +Service org.bluez +Interface org.bluez.NetworkServer +Object path /org/bluez/{hci0,hci1,...} + +Methods void Register(string uuid, string bridge) + + Register server for the provided UUID. Every new + connection to this server will be added the bridge + interface. + + Valid UUIDs are "gn", "panu" or "nap". + + Initially no network server SDP is provided. Only + after this method a SDP record will be available + and the BNEP server will be ready for incoming + connections. + + void Unregister(string uuid) + + Unregister the server for provided UUID. + + All servers will be automatically unregistered when + the calling application terminates. diff --git a/doc/sap-api.txt b/doc/sap-api.txt new file mode 100644 index 0000000..b8b7253 --- /dev/null +++ b/doc/sap-api.txt @@ -0,0 +1,34 @@ +BlueZ D-Bus Sim Access Profile API description +*********************************** + +Copyright (C) 2010 ST-Ericsson SA + + +Sim Access Profile hierarchy +============================ + +Service org.bluez +Interface org.bluez.SimAccess +Object path [variable prefix]/{hci0,hci1,...} + +Methods void Disconnect() + + Disconnects SAP client from the server. + + Possible errors: org.bluez.Error.Failed + + dict GetProperties() + + Return all properties for the interface. See the + properties section for available properties. + + Possible Errors: org.bluez.Error.Failed + +Signals PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties boolean Connected [readonly] + + Indicates if SAP client is connected to the server. diff --git a/doc/serial-api.txt b/doc/serial-api.txt new file mode 100644 index 0000000..5f9bd5f --- /dev/null +++ b/doc/serial-api.txt @@ -0,0 +1,41 @@ +BlueZ D-Bus Serial API description +********************************** + +Copyright (C) 2004-2010 Marcel Holtmann + + +Serial hierarchy +================ + +Service org.bluez +Interface org.bluez.Serial +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods string Connect(string pattern) + + Connects to a specific RFCOMM based service on a + remote device and then creates a RFCOMM TTY + device for it. The RFCOMM TTY device is returned. + + Possible patterns: UUID 128 bit as string + Profile short names, e.g: spp, dun + RFCOMM channel as string, 1-30 + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.InProgress + org.bluez.Error.ConnectionAttemptFailed + org.bluez.Error.NotSupported + + void Disconnect(string device) + + Disconnect a RFCOMM TTY device that has been + created by Connect method. + + To abort a connection attempt in case of errors or + timeouts in the client it is fine to call this method. + + In that case one of patterns of the Connect method should + be suplied instead of the TTY device. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.DoesNotExist diff --git a/doc/service-api.txt b/doc/service-api.txt new file mode 100644 index 0000000..5c8c7f3 --- /dev/null +++ b/doc/service-api.txt @@ -0,0 +1,62 @@ +BlueZ D-Bus Adapter API description +*********************************** + +Copyright (C) 2004-2010 Marcel Holtmann +Copyright (C) 2005-2006 Johan Hedberg +Copyright (C) 2005-2006 Claudio Takahasi +Copyright (C) 2006-2007 Luiz von Dentz + + +Service hierarchy +================= + +Service org.bluez +Interface org.bluez.Service +Object path [variable prefix]/{hci0,hci1,...} + +Methods uint32 AddRecord(string record) + + Adds a new service record from the XML description + and returns the assigned record handle. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.Failed + + void UpdateRecord(uint32 handle, string record) + + Updates a given service record provided in the + XML format. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NotAvailable + org.bluez.Error.Failed + + void RemoveRecord(uint32 handle) + + Remove a service record identified by its handle. + + It is only possible to remove service records that + where added by the current connection. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NotAuthorized + org.bluez.Error.DoesNotExist + org.bluez.Error.Failed + + void RequestAuthorization(string address, uint32 handle) + + Request an authorization for an incoming connection + for a specific service record. The service record + needs to be registered via AddRecord first. + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NotAuthorized + org.bluez.Error.DoesNotExist + org.bluez.Error.Failed + + void CancelAuthorization() + + Possible errors: org.bluez.Error.InvalidArguments + org.bluez.Error.NotAuthorized + org.bluez.Error.DoesNotExist + org.bluez.Error.Failed diff --git a/doc/version.xml.in b/doc/version.xml.in new file mode 100644 index 0000000..d78bda9 --- /dev/null +++ b/doc/version.xml.in @@ -0,0 +1 @@ +@VERSION@ -- cgit v1.2.3