diff options
author | David Laban <david.laban@collabora.co.uk> | 2011-06-30 18:00:44 -0400 |
---|---|---|
committer | David Laban <david.laban@collabora.co.uk> | 2011-06-30 18:00:44 -0400 |
commit | 019ee877ff573351d7ebad6b706f226758a5c6f6 (patch) | |
tree | 23e74075963858863f0cd4f8d939c39ddcaa0c0d /spec/Call_Content_Interface_Media.xml | |
parent | d0a87d7b3ccd62ff3268349b3968ebeb3bf7f60f (diff) |
Add DTMF state-machine to Content.I.Media
* Uses a call/response mechanism similar to
Call.Stream.I.Media.SendingState, and the Sending_State enum from
Call.Stream (since Paused is meaningless for the DTMF use-case).
* CurrentDTMF{Event,State} for state recovery.
Diffstat (limited to 'spec/Call_Content_Interface_Media.xml')
-rw-r--r-- | spec/Call_Content_Interface_Media.xml | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/spec/Call_Content_Interface_Media.xml b/spec/Call_Content_Interface_Media.xml index 5b8fecf1..b89c7b01 100644 --- a/spec/Call_Content_Interface_Media.xml +++ b/spec/Call_Content_Interface_Media.xml @@ -466,6 +466,69 @@ </tp:docstring> </property> + <signal name="DTMFChangeRequested" + tp:name-for-bindings="DTMF_Change_Requested"> + <tp:docstring> + Used by the CM to relay instructions from <tp:dbus-ref + namespace="ofdT">Channel.Interface.DTMF</tp:dbus-ref> to the streaming + implementation. If any contact in this call supports the + telephone-event codec in their MediaDescription, this event should be + sent as outlined in RFC 4733. Otherwise, it should be sent as an + audible tone. + </tp:docstring> + <arg name="Event" type="y" tp:type="DTMF_Event"> + <tp:docstring> + The event to send (or stop sending). + </tp:docstring> + </arg> + <arg name="State" type="u" tp:type="Sending_State"> + <tp:docstring> + Either <tp:type>Sending_State</tp:type>_Pending_Send or + <tp:type>Sending_State</tp:type>_Pending_Stop_Sending. + </tp:docstring> + </arg> + </signal> + + <method name="AcknowledgeDTMFChange" + tp:name-for-bindings="Acknowledge_DTMF_Change"> + <tp:docstring> + Called by the streaming implementation in response to + <tp:member-ref>DTMFChangeRequested</tp:member-ref> to confirm that it + has started or stopped sending the event in question. + </tp:docstring> + <arg name="Event" type="y" tp:type="DTMF_Event" direction="in"> + <tp:docstring> + The event referred to in the corresponding + <tp:member-ref>DTMFChangeRequested</tp:member-ref> signal. + </tp:docstring> + </arg> + <arg name="State" type="u" tp:type="Sending_State" direction="in"> + <tp:docstring> + Either <tp:type>Sending_State</tp:type>_Sending or + <tp:type>Sending_State</tp:type>_None. + </tp:docstring> + </arg> + </method> + + <property name="CurrentDTMFEvent" + tp:name-for-bindings="Current_DTMF_Event" type="y" tp:type="DTMF_Event" + access="read"> + <tp:docstring> + The currently requested DTMF event (for state-recoverability of + <tp:member-ref>DTMFChangeRequested</tp:member-ref>). Should be ignored + if <tp:member-ref>CurrentDTMFState</tp:member-ref> is None. + </tp:docstring> + </property> + + <property name="CurrentDTMFState" + tp:name-for-bindings="Current_DTMF_State" type="u" tp:type="Sending_State" + access="read"> + <tp:docstring> + The current DTMF state (for state-recoverability of + <tp:member-ref>DTMFChangeRequested</tp:member-ref>). + </tp:docstring> + </property> + <method name="Error" tp:name-for-bindings="Error"> <tp:docstring> Signal an unrecoverable error for this content, and remove it. |