diff options
-rw-r--r-- | contrib/bluez-api-4.96-fixed/adapter-api.txt | 285 | ||||
-rw-r--r-- | contrib/bluez-api-4.96-fixed/agent-api.txt | 99 | ||||
-rw-r--r-- | contrib/bluez-api-4.96-fixed/audio-api.txt | 458 | ||||
-rw-r--r-- | contrib/bluez-api-4.96-fixed/device-api.txt | 199 | ||||
-rw-r--r-- | contrib/bluez-api-4.96-fixed/input-api.txt | 44 | ||||
-rw-r--r-- | contrib/bluez-api-4.96-fixed/manager-api.txt | 74 | ||||
-rw-r--r-- | contrib/bluez-api-4.96-fixed/network-api.txt | 88 | ||||
-rw-r--r-- | contrib/bluez-api-4.96-fixed/serial-api.txt | 41 | ||||
-rw-r--r-- | contrib/obexd-api-0.42-fixed/agent-api.txt | 30 | ||||
-rw-r--r-- | contrib/obexd-api-0.42-fixed/agent.xml | 35 | ||||
-rw-r--r-- | contrib/obexd-api-0.42-fixed/client-api.txt | 329 | ||||
-rw-r--r-- | contrib/obexd-api-0.42-fixed/obexd-api.txt | 90 |
12 files changed, 1772 insertions, 0 deletions
diff --git a/contrib/bluez-api-4.96-fixed/adapter-api.txt b/contrib/bluez-api-4.96-fixed/adapter-api.txt new file mode 100644 index 0000000..55d0918 --- /dev/null +++ b/contrib/bluez-api-4.96-fixed/adapter-api.txt @@ -0,0 +1,285 @@ +BlueZ D-Bus Adapter API description +*********************************** + +Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> +Copyright (C) 2005-2006 Johan Hedberg <johan.hedberg@nokia.com> +Copyright (C) 2005-2006 Claudio Takahasi <claudio.takahasi@indt.org.br> +Copyright (C) 2006-2007 Luiz von Dentz <luiz.dentz@indt.org.br> + + +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() {unneeded_in_bluez_tools} + + 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() {unneeded_in_bluez_tools} + + 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) [async] + + 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 + appropriate 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 PairableTimeout [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/contrib/bluez-api-4.96-fixed/agent-api.txt b/contrib/bluez-api-4.96-fixed/agent-api.txt new file mode 100644 index 0000000..9ab2063 --- /dev/null +++ b/contrib/bluez-api-4.96-fixed/agent-api.txt @@ -0,0 +1,99 @@ +BlueZ D-Bus Agent API description +********************************** + +Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> +Copyright (C) 2005-2006 Johan Hedberg <johan.hedberg@nokia.com> + + +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. + + Note that the passkey will always be a 6-digit number, + so the display should be zero-padded at the start if + the value contains less than 6 digits. + + 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. + + Note that the passkey will always be a 6-digit number, + so the display should be zero-padded at the start if + the value contains less than 6 digits. + + 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/contrib/bluez-api-4.96-fixed/audio-api.txt b/contrib/bluez-api-4.96-fixed/audio-api.txt new file mode 100644 index 0000000..f36beb2 --- /dev/null +++ b/contrib/bluez-api-4.96-fixed/audio-api.txt @@ -0,0 +1,458 @@ +BlueZ D-Bus Audio API description +********************************* + +Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> +Copyright (C) 2005-2007 Johan Hedberg <johan.hedberg@nokia.com> +Copyright (C) 2005-2006 Brad Midgley <bmidgley@xmission.com> + +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 PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties string State [readonly] + + 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() {deprecated} + + 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 AnswerRequested() + + Sent when the answer button is pressed on the headset + + Connected() {deprecated} + + Sent when the device has been connected to. + + Disconnected() {deprecated} + + Sent when the device has been disconnected from. + + Stopped() {deprecated} + + Sent when the audio connection is closed + + Playing() {deprecated} + + Sent when the audio connection is opened + + SpeakerGainChanged(uint16 gain) {deprecated} + + The speaker gain changed. + + 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 Connected() {deprecated} + + Sent when a successful connection has been made to the + remote A2DP Sink + + Disconnected() {deprecated} + + Sent when the device has been disconnected from. + + Playing() {deprecated} + + Sent when a stream with remote device is started. + + 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 Ring(string number) + + Someone's calling from 'number'. + Caller number is provided as received from AG. + + 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. + + CallStarted() + + Call set up successfully. + + 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 presence 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/contrib/bluez-api-4.96-fixed/device-api.txt b/contrib/bluez-api-4.96-fixed/device-api.txt new file mode 100644 index 0000000..484e83f --- /dev/null +++ b/contrib/bluez-api-4.96-fixed/device-api.txt @@ -0,0 +1,199 @@ +BlueZ D-Bus Device API description +********************************** + +Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> +Copyright (C) 2005-2006 Johan Hedberg <johan.hedberg@nokia.com> +Copyright (C) 2005-2006 Claudio Takahasi <claudio.takahasi@indt.org.br> +Copyright (C) 2006-2007 Luiz von Dentz <luiz.dentz@indt.org.br> + + +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{u,s} 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() {unimplemented} + + 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) {unimplemented} + + 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) {unimplemented} + + 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) {unimplemented} + + Parameter is object path of created device node. + + NodeRemoved(object node) {unimplemented} + + 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] {unimplemented} + + 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/contrib/bluez-api-4.96-fixed/input-api.txt b/contrib/bluez-api-4.96-fixed/input-api.txt new file mode 100644 index 0000000..7c3a4b2 --- /dev/null +++ b/contrib/bluez-api-4.96-fixed/input-api.txt @@ -0,0 +1,44 @@ +BlueZ D-Bus Input API description +********************************* + +Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> + + +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/contrib/bluez-api-4.96-fixed/manager-api.txt b/contrib/bluez-api-4.96-fixed/manager-api.txt new file mode 100644 index 0000000..d2c1caf --- /dev/null +++ b/contrib/bluez-api-4.96-fixed/manager-api.txt @@ -0,0 +1,74 @@ +BlueZ D-Bus Manager API description +*********************************** + +Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> +Copyright (C) 2005-2006 Johan Hedberg <johan.hedberg@nokia.com> +Copyright (C) 2005-2006 Claudio Takahasi <claudio.takahasi@indt.org.br> +Copyright (C) 2006-2007 Luiz von Dentz <luiz.dentz@indt.org.br> + + +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/contrib/bluez-api-4.96-fixed/network-api.txt b/contrib/bluez-api-4.96-fixed/network-api.txt new file mode 100644 index 0000000..4dd3e58 --- /dev/null +++ b/contrib/bluez-api-4.96-fixed/network-api.txt @@ -0,0 +1,88 @@ +BlueZ D-Bus Network API description +*********************************** + +Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> + + +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/contrib/bluez-api-4.96-fixed/serial-api.txt b/contrib/bluez-api-4.96-fixed/serial-api.txt new file mode 100644 index 0000000..5f9bd5f --- /dev/null +++ b/contrib/bluez-api-4.96-fixed/serial-api.txt @@ -0,0 +1,41 @@ +BlueZ D-Bus Serial API description +********************************** + +Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> + + +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/contrib/obexd-api-0.42-fixed/agent-api.txt b/contrib/obexd-api-0.42-fixed/agent-api.txt new file mode 100644 index 0000000..e3dbc78 --- /dev/null +++ b/contrib/obexd-api-0.42-fixed/agent-api.txt @@ -0,0 +1,30 @@ +obexd Agent API description +********************************** + +Copyright (C) 2007-2010 Nokia Corporation +Copyright (C) 2007-2010 Marcel Holtmann <marcel@holtmann.org> + + +Agent hierarchy +=============== + +Service unique name +Interface org.openobex.Agent +Object path freely definable + +Methods + string Authorize(object transfer, string bt_address, string name, string type, int32 length, int32 time) + + This method gets called when the service daemon + needs to accept/reject a Bluetooth object push request. + Returns the full path (including the filename) where + the object shall be stored. + + Possible errors: org.openobex.Error.Rejected + org.openobex.Error.Canceled + + void Cancel() + + This method gets called to indicate that the agent + request failed before a reply was returned. It cancels + the previous request. diff --git a/contrib/obexd-api-0.42-fixed/agent.xml b/contrib/obexd-api-0.42-fixed/agent.xml new file mode 100644 index 0000000..bb089dd --- /dev/null +++ b/contrib/obexd-api-0.42-fixed/agent.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> +<node name="/ObexAgent"> + <interface name="org.openobex.Agent"> + <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="obexagent"/> + + <method name="Authorize"> + <arg type="o" name="transfer" direction="in"/> + <arg type="s" name="bt_address" direction="in"/> + <arg type="s" name="name" direction="in"/> + <arg type="s" name="type" direction="in"/> + <arg type="i" name="length" direction="in"/> + <arg type="i" name="time" direction="in"/> + <arg type="s" direction="out"/> + </method> + <method name="Cancel"/> + + <method name="Release"/> + <method name="Request"> + <arg type="o" name="transfer" direction="in"/> + <arg type="s" direction="out"/> + </method> + <method name="Progress"> + <arg type="o" name="transfer" direction="in"/> + <arg type="t" name="transferred" direction="in"/> + </method> + <method name="Complete"> + <arg type="o" name="transfer" direction="in"/> + </method> + <method name="Error"> + <arg type="o" name="transfer" direction="in"/> + <arg type="s" name="message" direction="in"/> + </method> + + </interface> +</node> diff --git a/contrib/obexd-api-0.42-fixed/client-api.txt b/contrib/obexd-api-0.42-fixed/client-api.txt new file mode 100644 index 0000000..fa8a36d --- /dev/null +++ b/contrib/obexd-api-0.42-fixed/client-api.txt @@ -0,0 +1,329 @@ +OBEX client API description +*************************** + +Copyright (C) 2007-2010 Marcel Holtmann <marcel@holtmann.org> + + +Client hierarchy +================ + +Service org.openobex.client +Interface org.openobex.Client +Object path / +Object name OBEXClient + +Methods void SendFiles(dict device, array{string} files, object agent) + + Send one or multiple local files to the specified + device. The device is configured via properties. At + least the Destination property should be specified. + + void PullBusinessCard(dict device, string file) + + Request the business card from a remote device and + store it in the local file. + + void ExchangeBusinessCards(dict device, string clientfile, string file) + + Push the client's business card to the remote device + and then retrieve the remote business card and store + it in a local file. + + object CreateSession(dict device) + + Create a new OBEX session. The device is configured + via properties like in SendFiles. + + void RemoveSession(object session) + + Unregister session and abort pending transfers. + + string GetCapabilities(dict device) + + Get remote device capabilities. + +Properties string Target + + string Source + + string Destination + + byte Channel + + +Session hierarchy +================= + +Service org.openobex.client +Interface org.openobex.Session +Object path [variable prefix]/{session0,session1,...} +Object name OBEXClientSession + +Methods dict GetProperties() + + Returns all properties for the session. + + void AssignAgent(object agent) + + Assign an OBEX agent to this session. This allows + detailed progress reports about the transactions. + + void ReleaseAgent(object agent) + + Release a previously assigned OBEX agent. + +Properties string Source [readonly] + + string Destination [readonly] + + byte Channel [readonly] + + +File Transfer hierarchy +======================= + +Service org.openobex.client +Interface org.openobex.FileTransfer +Object path [variable prefix]/{session0,session1,...} +Object name OBEXClientFileTransfer + +Methods void ChangeFolder(string folder) + + Change the current folder of the remote device. + + void CreateFolder(string folder) + + Create a new folder in the remote device. + + array{dict} ListFolder() + + Returns a dictionary containing information about + the current folder content. + + The following keys are defined: + + string Name : Object name in UTF-8 format + string Type : Either "folder" or "file" + uint64 Size : Object size or number of items in folder + string Permission : Group, owner and other permission + guint64 Modified : Last change + guint64 Accessed : Last access + guint64 Created : Creation date + + void GetFile(string targetfile, string sourcefile) + + Copy the source file (from remote device) to the + target file (on local filesystem). + + A new Transfer object is created to represent this + transaction. + + void PutFile(string sourcefile, string targetfile) + + Copy the source file (from local filesystem) to the + target file (on remote device). + + A new Transfer object is created to represent this + transaction. + + void CopyFile(string sourcefile, string targetfile) + + Copy a file within the remote device from source file + to target file. + + void MoveFile(string sourcefile, string targetfile) + + Movea file within the remote device from source file + to the target file. + + void Delete(string file) + + Deletes the specified file/folder. + + +Phonebook Access hierarchy +======================= + +Service org.openobex.client +Interface org.openobex.PhonebookAccess +Object path [variable prefix]/{session0,session1,...} + +Methods void Select(string location, string phonebook) + + Select the phonebook object for other operations. Should + be call before all the other operations. + + location : Where the phonebook is stored, possible inputs : + "INT" ( "INTERNAL" which is default ) + "SIM" ( "SIM1" ) + "SIM2" + ... + + phonebook : Possible inputs : + "pb" : phonebook for the saved contacts + "ich": incoming call history + "och": outgoing call history + "mch": missing call history + "cch": combination of ich och mch + + string PullAll() + + Return the entire phonebook object from the PSE server + in plain string with vcard format. + + array{string vcard, string name} List() + + Return an array of vcard-listing data which contains the + vcard : name paired string, for example "1.vcf" : "John". + + string Pull(string vcard) + + Retrieve the vcard in the current phonebook object + for example : Pull("0.vcf") + + array{string vcard, string name} + Search(string field, string value) + + Return an array of vcard-listing data which contains the + vcard : name paired string match the search condition. + + field : the field in the vcard to search with + { "name" (default) | "number" | "sound" } + value : the string value to search for + + uint16 GetSize() + + Return the number of the non-null entries in the selected + phonebook object. + + void SetFormat(string format) + + Indicate the format of the vcard that should be return by + related methods. + + format : { "vcard21" (default) | "vcard30" } + + void SetOrder(string order) + + Indicate the sorting method of the vcard-listing data returned + by List and Search methods. + + order : { "indexed" (default) | "alphanumeric" | "phonetic" } + + void SetFilter(array{string}) {FIX?!} + + Indicate fields that should be contained in vcards return by + related methods. + + Give an empty array will clear the filter and return all fields + available in vcards. And this is the default behavior. + + Possible filter fields : "VERSION", "FN", ..., "ALL", "bit[0-63]" + + array{string} ListFilterFields() {FIX?!} + + Return All Available fields that can be used in SefFilter method. + + array{string} GetFilter() + + Return the current filter setting + +Synchronization hierarchy +======================= + +Service org.openobex.client +Interface org.openobex.Synchronization +Object path [variable prefix]/{session0,session1,...} + +Methods void SetLocation(string location) + + Set the phonebook object store location for other operations. Should + be called before all the other operations. + + location: Where the phonebook is stored, possible values: + "INT" ( "INTERNAL" which is default ) + "SIM1" + "SIM2" + ...... + + string GetPhonebook() + + retrieve an entire Phonebook Object store from remote device + + void PutPhonebook(string obj) + + send an entire Phonebook Object store to remote device + +Transfer hierarchy +================== + +Service org.openobex.client +Interface org.openobex.Transfer +Object path [variable prefix]/{transfer0,transfer1,...} +Object name OBEXClientTransfer + +Methods dict GetProperties() + + Returns all properties for the transfer. See the + properties section for available properties. + + void Cancel() + + Cancels this transfer. + +Properties string Name [readonly] + + Name of the transferred object. + + uint64 Size [readonly] + + Size of the transferred object. If the size is + unknown, then this property will not be present. + + string Filename [readonly] + + Complete name of the file being received or sent. + + +Agent hierarchy +=============== + +Service unique name +Interface org.openobex.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 Request(object transfer) + + Accept or reject a new transfer (client and server) + and provide the filename for it. + + In case of incoming transfers it is the filename + where to store the file and for outgoing transfers + it is the filename to show the remote device. If left + empty it will be calculated automatically. + + Possible errors: org.openobex.Error.Rejected + org.openobex.Error.Canceled + + void Progress(object transfer, uint64 transferred) + + Progress within the transfer has been made. The + number of transferred bytes is given as second + argument for convenience. + + void Complete(object transfer) + + Informs that the transfer has completed sucessfully. + + void Error(object transfer, string message) + + Informs that the transfer has been terminated because + of some error. diff --git a/contrib/obexd-api-0.42-fixed/obexd-api.txt b/contrib/obexd-api-0.42-fixed/obexd-api.txt new file mode 100644 index 0000000..6cfaac7 --- /dev/null +++ b/contrib/obexd-api-0.42-fixed/obexd-api.txt @@ -0,0 +1,90 @@ +obexd API description +********************************** + +Copyright (C) 2007-2010 Nokia Corporation +Copyright (C) 2007-2010 Marcel Holtmann <marcel@holtmann.org> + + +Manager hierarchy +=============== + +Service org.openobex +Interface org.openobex.Manager +Object path / +Object name OBEXManager + +Methods + void RegisterAgent(object agent) + + Register an agent to request authorization of + the user to accept/reject objects. Object push + service needs to authorize each received object. + + Possible errors: org.openobex.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.openobex.Error.DoesNotExist + +Signals SessionCreated(object session) + + Signal sent when OBEX connection has been accepted. + (FTP only) + + SessionRemoved(object session) + + Sent when the transport is disconnected + (FTP only) + + TransferStarted(object transfer) + + Signal sent when an object push operation starts. + (OPP only) + + TransferCompleted(object transfer, boolean success) + + Signal sent when the object has been received + or an error happens. + (OPP only) + + +Transfer hierarchy +=============== + +Service org.openobex +Interface org.openobex.Transfer +Object path /transfer{0, 1, 2, ...} +Object name OBEXTransfer + +Methods + void Cancel() + + Stops the current transference. + +Signals + Progress(int32 total, int32 transfered) + + +Session hierarchy +=============== + +Service org.openobex +Interface org.openobex.Session +Object path /session{0, 1, 2, ...} +Object name OBEXSession + +Methods + dict GetProperties() + + +Signals TBD + + +Properties + string Address [readonly] + + Bluetooth device address or USB |