The Silence object allows you to play back a silence phase of a specified duration within an Output object. One common use is to provide the proper cadence, or speaking rhythm, when concatenating various resources such as prerecorded audio files, Variable objects, text elements and other Output objects.
Due to its nature the Silence object is only relevant for the voice and video channel; in the text and Web channel it will not be processed. For further information on channels refer to Chapter 10 – How to Support Multiple Phone Channels in the Design Guide.
The Object Definition below covers the configuration of the Silence object with VoiceObjects Desktop. For information on how to define this object type using VoiceObjectsXML refer to the VoiceObjectsXML Definition paragraph.
The Silence object belongs to the object category Resources.
The following dialog flow example demonstrates an Output object with an embedded Audio object, Silence object and plain text.
|
Object |
Call Flow |
|
|
[ Music jingle ] |
||
|
|
[ Silence of 1 second ] |
|
|
Text |
Hello and welcome to the Voice Portal. |
|
The Definition of the Silence object provides one section:

For information regarding additional object configuration, refer to Precondition and Properties in this Object Reference.
In the Duration field, the length of the silence phase is defined. The drop-down list offers a set of predefined timeframes. Alternatively a Variable, Expression, Script, or Layer object can be used to specify the silence phase at call time. The value needs to be numeric and will be interpreted as seconds.

Silence in outputs is typically generated on the media platform by use of a text-to-speech (TTS) engine. Therefore on some media platforms, if no TTS engine is installed, the Silence object is not usable in its default configuration.
To enable the use of the Silence object in these cases, it can be configured to use audio files. Note that in this case all durations are rounded down to full 100ms periods, so e.g. a quarter of a second will actually result in 200ms of silence.
To enable the use of audio files, locate the appropriate media platform driver in the file ../VoiceObjects/Platform/WEB-INF/config/MPDrivers.xml. In the configuration section of the driver, change the setting for <breakAudioSupport> to true. If you would like to use audio files other than those provided with the VoiceObjects installation, configure their location using the setting <breakAudioSource>.
Note that this configuration is transparent to the application itself and only influences how the silence is realized on the individual media platform.
The Silence object is represented by the VoiceObjectsXML element <silence>. It has one attribute and one group of children.
In addition, the element has the standard attributes described in the XDK Guide.
· duration [required]
Defines the duration of the silence, as a numerical value interpreted as seconds. May be static text or a reference to an Expression, Script, or Variable object.
· <expression usage=”precondition”> or
<variable usage=”precondition”> or
<collection usage=”precondition”> or
<script usage=”precondition”>
Defines the precondition for the Silence object.
<silence duration=”2”/>
The following table contains all object types that can reference a Silence object:
|
Icon |
Object Name |
Use Case Example |
|
|
The Silence object can be referenced within all objects that provide an embedded output definition. |
|
|
|
The Silence object can be linked in the parameter set within any OSDM object. |
In order to leverage the capabilities of the integrated documentation of VoiceObjects it is important to provide intuitive and self-explanatory object names and descriptions.
The name of a Silence object should contain information about the duration of the silence phase. When using a Silence object within an output definition the user can immediately identify the length of the silence interval. The table below lists three examples:
|
Name |
Description |
|
|
Interval of 1 second. |
|
|
Interval of 500 milliseconds. |
|
|
Silence phase is dynamically defined through the value of a variable. |