In-Queue Scripting
Tasks may be performed for all sessions, e.g.
- Play a recording or Text-to-Speech, and capture a DTMF tone, e.g. “We are currently experiencing high call volume. If you would prefer to hang up and have an agent call you back, please press 1”
- Reassign to a different queue after a specified time
Or performed based on the result of further processing, e.g.
- Analysing the language within a chat or SMS using Natural Language Processing, e.g. does it contain words indicating dissatisfaction?
- Using the session’s CLI, email address or chat identifier to query any external data held, e.g. age, purchase history, contact history, geographical region
By performing processing and actions in-queue, i.e. without dequeuing to either a live or virtual agent, proper statistics are retained for reporting purposes.

The script is designed in Scripter Designer and published against a queue. The script will run against a session as soon as it enters the queue.

The script can be designed in the normal way, using a range of Scripter steps, as follows.

Section | Step | Description |
---|---|---|
Call Control | ||
Play File | Play a sound file that has a fully qualified file name | |
Play File and Capture | Play a sound file and capture digits entered by the caller using their touch tone telephone key pad | |
Play Loop | Play a recorded message that has been uploaded (via the Softdial Repository™ Sounds tab) in a continuous loop | |
Play Loop File | Play a sound file in a continuous loop. | |
Play Recording | Play a recorded message that has been uploaded via the Softdial Repository™ Sounds tab | |
Play Recording and Capture | Play a recorded message that has been uploaded via the Softdial Repository™ Sounds tab, and capture digits entered by the caller using their touch tone telephone key pad | |
Play TTS | Play a Text To Speech (TTS) message | |
Play TTS and Capture | Play a Text To Speech (TTS) Message and capture digits entered by the caller using their touch tone telephone key pad | |
Stop Play Loop | Stop playing a loop that was started with Play Loop | |
Call Transfer and Conferencing | ||
Requeue | Transfer a call session to a queue for handling by agents in that queue | |
Database | ||
CLI Record Lookup | Look up a customer record within the campaign table by Caller Line Identification (CLI) | |
Data Query | Execute a database query using SQL | |
Record Lookup | Look up a customer record within the campaign table by any field | |
In-Queue IVR | ||
Dispose Session In Queue | Disposition the call if the caller hangs up | |
Get Metrics for the current media session | Gets metrics for the current media session | |
Set Session Destination Hints | Attach hints to individual sessions to alter inbound session destination queue and agent, as a result of (for example) an IVR data lookup |

When publishing the project, the Agent Type field must be set to ‘In-Queue (Robot)’ (Fig. 1). Both Campaign and Queue must be defined.