summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2012-02-22 13:10:49 +0000
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2012-02-22 13:10:49 +0000
commiteafca393510ccedc7b8760e48a032ed2e73ee00c (patch)
tree1be8a4a5bfcd8bccfdeff705020272562895298d
parente7ac6ca64931da372c1d6389c57523e65a546de0 (diff)
Reduce Chan.I.DTMF1 to just the bits needed for Call1next-dtmf
-rw-r--r--spec/Channel_Interface_DTMF1.xml245
1 files changed, 2 insertions, 243 deletions
diff --git a/spec/Channel_Interface_DTMF1.xml b/spec/Channel_Interface_DTMF1.xml
index 0222dd7a..7bcde5f0 100644
--- a/spec/Channel_Interface_DTMF1.xml
+++ b/spec/Channel_Interface_DTMF1.xml
@@ -21,12 +21,8 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</
<interface name="im.telepathy1.Channel.Interface.DTMF1">
<tp:requires interface="im.telepathy1.Channel.Type.Call1"/>
- <tp:changed version="0.25.2">The only part of this spec that should
- be used with a Call1 channel is the "InitialTones" property.
- </tp:changed>
-
- <tp:changed version="0.19.6">The Stream_IDs in this
- interface can now be ignored by CMs.
+ <tp:changed version="0.UNRELEASED">
+ Removed everything not applicable to Call1.
</tp:changed>
<tp:docstring xmlns="http://www.w3.org/1999/xhtml">
@@ -39,175 +35,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</
and are listed in the <tp:type>DTMF_Event</tp:type> enumeration.
</tp:docstring>
- <method name="StartTone" tp:name-for-bindings="Start_Tone">
- <tp:changed version="0.19.6">The <var>Stream_ID</var> parameter became
- vestigial.</tp:changed>
- <arg direction="in" name="Stream_ID" type="u">
- <tp:docstring>This argument is included for backwards
- compatibility and MUST be ignored by the implementations - the
- tone SHOULD be sent to all eligible streams in the
- channel.</tp:docstring>
- </arg>
- <arg direction="in" name="Event" type="y" tp:type="DTMF_Event">
- <tp:docstring>A numeric event code from the DTMF_Event enum.</tp:docstring>
- </arg>
-
- <tp:docstring>
- <p>Start sending a DTMF tone to all eligible streams in the channel.
- Where possible, the tone will continue until
- <tp:member-ref>StopTone</tp:member-ref> is called. On certain protocols,
- it may only be possible to send events with a predetermined length. In
- this case, the implementation MAY emit a fixed-length tone, and the
- StopTone method call SHOULD return NotAvailable.</p>
- <tp:rationale>
- The client may wish to control the exact duration and timing of the
- tones sent as a result of user's interaction with the dialpad, thus
- starting and stopping the tone sending explicitly.
- </tp:rationale>
-
- <p>Tone overlaping or queueing is not supported, so this method can only
- be called if no DTMF tones are already being played.</p>
- </tp:docstring>
- <tp:possible-errors>
- <tp:error name="im.telepathy1.Error.NetworkError" />
- <tp:error name="im.telepathy1.Error.InvalidArgument">
- <tp:docstring>
- The given stream ID was invalid. Deprecated, since stream IDs
- are ignored.
- </tp:docstring>
- </tp:error>
- <tp:error name="im.telepathy1.Error.NotAvailable">
- <tp:docstring>
- There are no eligible audio streams.
- </tp:docstring>
- </tp:error>
- <tp:error name="im.telepathy1.Error.ServiceBusy">
- <tp:docstring>
- DTMF tones are already being played.
- </tp:docstring>
- </tp:error>
- </tp:possible-errors>
- </method>
-
- <method name="StopTone" tp:name-for-bindings="Stop_Tone">
- <tp:changed version="0.19.6">The <var>Stream_ID</var> parameter became
- vestigial.</tp:changed>
- <arg direction="in" name="Stream_ID" type="u">
- <tp:docstring>This argument is included for backwards
- compatibility and MUST be ignored by the implementations - the
- sending SHOULD be stoped in all eligible streams in the
- channel.</tp:docstring>
- </arg>
-
- <tp:docstring>
- Stop sending any DTMF tones which have been started using the
- <tp:member-ref>StartTone</tp:member-ref> or
- <tp:member-ref>MultipleTones</tp:member-ref> methods.
- If there is no current tone, this method will do nothing.
- If MultipleTones was used, the client should not assume the
- sending has stopped immediately; instead, the client should wait
- for the StoppedTones signal.
- <tp:rationale>
- On some protocols it might be impossible to cancel queued tones
- immediately.
- </tp:rationale>
- </tp:docstring>
- <tp:possible-errors>
- <tp:error name="im.telepathy1.Error.NetworkError" />
- <tp:error name="im.telepathy1.Error.InvalidArgument">
- <tp:docstring>
- The given stream ID was invalid. Deprecated, since stream IDs
- are ignored.
- </tp:docstring>
- </tp:error>
- <tp:error name="im.telepathy1.Error.NotAvailable">
- <tp:docstring>
- Continuous tones are not supported by this stream. Deprecated,
- since stream IDs are ignored.
- </tp:docstring>
- </tp:error>
- </tp:possible-errors>
- </method>
-
- <method name="MultipleTones" tp:name-for-bindings="Multiple_Tones">
- <tp:added version="0.19.6" />
- <tp:changed version="0.21.3">The characters [pPxXwW,] must
- also be supported.</tp:changed>
- <arg direction="in" name="Tones" type="s">
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>A string representation of one or more DTMF
- events. Implementations of this method MUST support all of the
- following characters in this string:</p>
-
- <ul>
- <li>the digits 0-9, letters A-D and a-d, and symbols '*' and '#'
- correspond to the members of <tp:type>DTMF_Event</tp:type></li>
-
- <li>any of 'p', 'P', 'x', 'X' or ',' (comma) results in an
- implementation-defined pause, typically for 3 seconds</li>
-
- <li>'w' or 'W' waits for the user to continue, by stopping
- interpretation of the string, and if there is more to be played,
- emitting the <tp:member-ref>TonesDeferred</tp:member-ref> signal
- with the rest of the string as its argument: see that signal
- for details</li>
- </ul>
- </tp:docstring>
- </arg>
- <tp:docstring>
- <p>Send multiple DTMF events to all eligible streams in the channel.
- Each tone will be played for an implementation-defined number of
- milliseconds (typically 250ms), followed by a gap before the next tone
- is played (typically 100ms). The
- duration and gap are defined by the protocol or connection manager.</p>
-
- <tp:rationale>
- <p>In cases where the client knows in advance the tone sequence it
- wants to send, it's easier to use this method than manually start
- and stop each tone in the sequence.</p>
-
- <p>The tone and gap lengths may need to vary for interoperability,
- according to the protocol and other implementations' ability to
- recognise tones. At the time of writing, GStreamer uses a
- minimum of 250ms tones and 100ms gaps when playing in-band DTMF
- in the normal audio stream, or 70ms tones and 50ms gaps when
- encoding DTMF as <code>audio/telephone-event</code>.</p>
- </tp:rationale>
-
- <p>Tone overlaping or queueing is not supported, so this method can only
- be called if no DTMF tones are already being played.</p>
- </tp:docstring>
- <tp:possible-errors>
- <tp:error name="im.telepathy1.Error.NetworkError" />
- <tp:error name="im.telepathy1.Error.InvalidArgument">
- <tp:docstring>
- The supplied Tones string was invalid.
- </tp:docstring>
- </tp:error>
- <tp:error name="im.telepathy1.Error.NotAvailable">
- <tp:docstring>
- There are no eligible audio streams.
- </tp:docstring>
- </tp:error>
- <tp:error name="im.telepathy1.Error.ServiceBusy">
- <tp:docstring>
- DTMF tones are already being played.
- </tp:docstring>
- </tp:error>
- </tp:possible-errors>
- </method>
-
- <property name="CurrentlySendingTones"
- tp:name-for-bindings="Currently_Sending_Tones" type="b" access="read">
- <tp:added version="0.19.6" />
- <tp:docstring>
- Indicates whether there are DTMF tones currently being sent in the
- channel. If so, the client should wait for
- <tp:member-ref>StoppedTones</tp:member-ref> signal before trying to
- send more tones.
- </tp:docstring>
- </property>
-
<property name="InitialTones" tp:name-for-bindings="Initial_Tones"
type="s" access="read" tp:immutable="yes" tp:requestable="yes">
<tp:added version="0.19.6" />
@@ -223,74 +50,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</
</tp:docstring>
</property>
- <property name="DeferredTones" tp:name-for-bindings="Deferred_Tones"
- type="s" access="read">
- <tp:added version="0.21.3" />
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>The tones waiting for the user to continue, if any.</p>
-
- <p>When this property is set to a non-empty value,
- <tp:member-ref>TonesDeferred</tp:member-ref> is emitted.
- When any tones are played (i.e. whenever
- <tp:member-ref>SendingTones</tp:member-ref> is emitted),
- this property is reset to the empty string.</p>
- </tp:docstring>
- </property>
-
- <signal name="TonesDeferred" tp:name-for-bindings="Tones_Deferred">
- <tp:added version="0.21.3" />
- <arg name="Tones" type="s">
- <tp:docstring>The new non-empty value of
- <tp:member-ref>DeferredTones</tp:member-ref>.</tp:docstring>
- </arg>
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>Emitted when 'w' or 'W', indicating "wait for the user to continue",
- is encountered while playing a DTMF string queued by
- <tp:member-ref>MultipleTones</tp:member-ref> or
- <tp:member-ref>InitialTones</tp:member-ref>. Any queued DTMF events
- after the 'w', which have not yet been played, are placed in the
- <tp:member-ref>DeferredTones</tp:member-ref> property and copied
- into this signal's argument.</p>
-
- <p>When the channel handler is ready to continue, it MAY pass the
- value of <tp:member-ref>DeferredTones</tp:member-ref> to
- <tp:member-ref>MultipleTones</tp:member-ref>, to resume sending.
- Alternatively, it MAY ignore the deferred tones, or even play
- different tones instead. Any deferred tones are discarded the next
- time a tone is played.</p>
-
- <p>This signal SHOULD NOT be emitted if there is nothing left to play,
- i.e. if the 'w' was the last character in the DTMF string.</p>
- </tp:docstring>
- </signal>
-
- <signal name="SendingTones" tp:name-for-bindings="Sending_Tones">
- <tp:added version="0.19.6" />
- <arg name="Tones" type="s">
- <tp:docstring>DTMF string (one or more events) that is to be played.
- </tp:docstring>
- </arg>
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>DTMF tone(s)are being sent to all eligible streams in the channel.
- The signal is provided to indicating the fact that the streams are
- currently being used to send one or more DTMF tones, so any other
- media input is not getting through to the audio stream. It also
- serves as a cue for the
- <tp:member-ref>StopTone</tp:member-ref> method.</p>
- </tp:docstring>
- </signal>
-
- <signal name="StoppedTones" tp:name-for-bindings="Stopped_Tones">
- <tp:added version="0.19.6" />
- <arg name="Cancelled" type="b">
- <tp:docstring>True if the DTMF tones were actively cancelled via
- <tp:member-ref>StopTone</tp:member-ref>.</tp:docstring>
- </arg>
- <tp:docstring xmlns="http://www.w3.org/1999/xhtml">
- <p>DTMF tones have finished playing on streams in this channel.</p>
- </tp:docstring>
- </signal>
-
<tp:enum name="DTMF_Event" type="y">
<tp:enumvalue suffix="Digit_0" value="0">
<tp:docstring>0</tp:docstring>