Le 15/12/2011 11:00, Luiz Augusto von Dentz a écrit :
Hi Frédéric,
2011/12/14 Frédéric Danis<frederic.danis@xxxxxxxxxxxxxxx>:
+TelephonyAgent hierarchy
+========================
+
+Service unique name
+Interface org.bluez.TelephonyAgent
+Object path freely definable
+
+Methods void NewConnection(filedescriptor fd, dict properties)
+
+ This method gets called whenever a new connection
+ has been established. 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 properties:
+
+ strict Device:
+
+ BlueZ remote device object.
+
+ string UUID:
+
+ Profile UUID of the connection.
+
+ uint16 Version:
+
+ Remote profile version.
+
+ uint16 Features:
+
+ Remote profile features.
+
+ string MediaTransportPath:
+
+ Optional. MediaTransport object path.
I thought we had agreed in having the transport implemented directly
inside the agent, at least that was my proposal, otherwise it keeps
bluetoothd in the middle of the communication. It may not seem obvious
but we should target low latency as we are dealing with audio the
events need to be propagated fast.
So instead of MediaTransportPath, what I suggest is sending the
endpoint itself e.g. string,object Endpoint Connection id and object
path of the MediaEndpoint to be used. This means the agent e.g. oFono
will have to create an object which implements
org.bluez.MediaTransport and then call
org.bluez.MediaEndpoint.SetConfiguration in the received object.
If I understand correctly, passing Media Endpoint connection and path
will imply that the telephony agent will have to manage the SCO
connection, which means that we need to link the telephony agent with
BlueZ libs.
As far as I understand, one of the goals is to remove telephony code
from BlueZ and bluetooth code from telephony daemon.
Am I wrong ?
Passing the MediaTransport allows to keep bluetooth part in BlueZ daemon
and telephony part in telephony agent.
Regards
Fred
--
Frederic Danis Open Source Technology Centre
frederic.danis@xxxxxxxxx Intel Corporation
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html