Interface Channel.Interface.DTMF

Interface Index (Compact) | Summary | Description | Methods | Signals | Properties | Types

Methods

StartTone (u: Stream_ID, y: Event) nothing
StopTone (u: Stream_ID) nothing
MultipleTones (s: Tones) nothing

Signals

SendingTones (s: Tones)
StoppedTones (b: Cancelled)

Properties

CurrentlySendingTones b Read only
InitialTones s Read only

Types

DTMF_Event Enum y
Changed in 0.19.6. The Stream_IDs in this interface should now be ignored by CMs. This is primarily to allow this interface to be used with Call.DRAFT channels.
Objects implementing this interface must also implement:

Description

An interface that gives a Channel the ability to send DTMF events over audio streams which have been established using the StreamedMedia channel type. The event codes used are in common with those defined in RFC4733, and are listed in the DTMF_Event enumeration.

Methods

(Permalink)

StartTone (u: Stream_ID, y: Event) → nothing

Changed in 0.19.6. The Stream_ID parameter became vestigial.

Parameters

  • Stream_ID — u (Stream_ID)
  • A stream ID as defined in the StreamedMedia channel type. 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.
  • Event — y (DTMF_Event)
  • A numeric event code from the DTMF_Event enum.

Start sending a DTMF tone to all eligible streams in the channel. Where possible, the tone will continue until StopTone 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.

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.

Tone overlaping or queueing is not supported, so this method can only be called if no DTMF tones are already being played.


Possible Errors

  • Network Error
  • Raised when there is an error reading from or writing to the network.
  • Invalid Argument
  • The given stream ID was invalid. Deprecated, since stream IDs are ignored.
  • Not Available
  • There are no eligible audio streams.
  • Service Busy
  • DTMF tones are already being played.
(Permalink)

StopTone (u: Stream_ID) → nothing

Changed in 0.19.6. The Stream_ID parameter became vestigial.

Parameters

  • Stream_ID — u (Stream_ID)
  • A stream ID as defined in the StreamedMedia channel type. 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.
Stop sending any DTMF tones which have been started using the StartTone or MultipleTones 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.
Rationale:
On some protocols it might be impossible to cancel queued tones immediately.

Possible Errors

  • Network Error
  • Raised when there is an error reading from or writing to the network.
  • Invalid Argument
  • The given stream ID was invalid. Deprecated, since stream IDs are ignored.
  • Not Available
  • Continuous tones are not supported by this stream. Deprecated, since stream IDs are ignored.
(Permalink)

MultipleTones (s: Tones) → nothing

Added in 0.19.6.

Parameters

  • Tones — s
  • A string representation of one or more DTMF events.

Send multiple DTMF events to all eligible streams in the channel. Each character in the Tones string must be a valid DTMF event (as defined by RFC4733). Each tone will be played for a pre-defined number of milliseconds, followed by a pause before the next tone is played. The duration/pause is defined by the protocol or connection manager.

Rationale:
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.

Tone overlaping or queueing is not supported, so this method can only be called if no DTMF tones are already being played.


Possible Errors

Signals

(Permalink)

SendingTones (s: Tones)

Added in 0.19.6.

Parameters

  • Tones — s
  • DTMF string (one or more events) that is to be played.

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 StopTone method.

(Permalink)

StoppedTones (b: Cancelled)

Added in 0.19.6.

Parameters

  • Cancelled — b
  • True if the DTMF tones were actively cancelled via StopTone.

DTMF tones have finished playing on streams in this channel.

Properties

Accessed using the org.freedesktop.DBus.Properties interface.
(Permalink)

CurrentlySendingTones — b

Read only
Added in 0.19.6.
Indicates whether there are DTMF tones currently being sent in the channel. If so, the client should wait for StoppedTones signal before trying to send more tones.
(Permalink)

InitialTones — s

Read only
Added in 0.19.6.

If non-empty in a channel request that will create a new channel, the connection manager should send the tones immediately after at least one eligible audio stream has been created in the channel.

This property is immutable (cannot change).

Types

Enum (Permalink)

DTMF_Event — y

  • Digit_0 (0)
  • 0
  • Digit_1 (1)
  • 1
  • Digit_2 (2)
  • 2
  • Digit_3 (3)
  • 3
  • Digit_4 (4)
  • 4
  • Digit_5 (5)
  • 5
  • Digit_6 (6)
  • 6
  • Digit_7 (7)
  • 7
  • Digit_8 (8)
  • 8
  • Digit_9 (9)
  • 9
  • Asterisk (10)
  • *
  • Hash (11)
  • #
  • Letter_A (12)
  • A
  • Letter_B (13)
  • B
  • Letter_C (14)
  • C
  • Letter_D (15)
  • D