diff options
author | Gustavo F. Padovan <padovan@profusion.mobi> | 2010-02-04 16:48:11 -0200 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@nokia.com> | 2010-02-04 10:54:45 -0800 |
commit | a2b958337fd1eaf827b6b434ac655873e6f3602a (patch) | |
tree | d83b2883b0c18165c4223e57397c849eecedcd3d /doc | |
parent | f3ad2340925f4ed9b519e1a6fb540fc583bf1978 (diff) | |
download | bluez-a2b958337fd1eaf827b6b434ac655873e6f3602a.tar.gz |
Implement HandsfreeGateway Interface
Create a interface where a Handsfree agent can register and use BlueZ to
handle the rfcomm and sco links.
Many thanks to Zhenhua Zhang <zhenhua.zhang@intel.com> for his
prototype on this code.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/hfp-api.txt | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/doc/hfp-api.txt b/doc/hfp-api.txt new file mode 100644 index 00000000..8180de0e --- /dev/null +++ b/doc/hfp-api.txt @@ -0,0 +1,82 @@ +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. + +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. |