Templates

From Askozia Handbook
Jump to: navigation, search


Contents

Overview

Askozia's Call Flow Editor brings along a number of templates to help you getting started. Click on Templates in the upper part of the navigation to open the drop down menu as shown below.

Templates

The following video illustrates the Basic IVR example, Basic language selector and Basic If example templates.

Basic

The Basic templates give examples for basic call handling as well as for redirects, transfers, recordings and more.

The chapter follows the order of templates as used in the Call Flow Editor.

Basic call handling

The Basic call handling template rings the selected extension. It gives a short overview of the basic modules, usually needed for every call flow.

Select the extension of the phone to be used in the Extension module to make it work. Before phones show up in the drop down menu of Extension, they need to be configured in Accounts.

Basic call handling

Every Call Flow has to begin with Start, usually followed by Answer to initalize further call handling. The ring length specified for the phone selected in Extension is 10 seconds. The end of the call flow is marked by a Hangup module terminating the calling channel.

Limit number of simultaneous calls

This call flow limits the number of parallel calls to '1'. If more than one call at a time comes in, the user hears the busy signal for 3 seconds and the call is dropped. If a call reaches the Extension module, the selected phone rings for ten seconds. If the call is not answered during this period, it is dropped.

Limit number of simultaneous calls

For more information, take a look at the description of the MaximumCalls module.

Redirect with welcome message

This call flow plays a message before routing the call to the selected phone.

Redirect with welcome message

Record an announcement with the phone selected in the Playback module by clicking on Record now. Alternatively, click on Upload File to upload an audio file. Select the phone to be called after the the message has been played in the Extension module. The specified ring length is 10 seconds. If the call is not answered during this period, it is dropped.

Record phone calls and send via email

This call flow is an example for how to record phone calls and automatically send them via email after hanging up.

Record phone calls and send via email

After passing through the Monitor module, everything said is being recorded. After hanging up, the recording is sent to the email address specified in the MonitorStop module.

Record a message and hang up

In this template, the caller can leave a message which is sent to the email address specified in RecordEmail.

Record a message and hang up

This is an alternative to Voicemail. Use the RecordEmail module if you don't want to use the voicemail of an existing phone.

Caller can enter an internal extension and gets connected to it

In this template, the caller is asked to enter an internal extension.

Caller can enter an internal extension and gets connected to it

The announcement is specified in the Text2Speech module. The entered extension is saved in the 'INTEXTEN' variable of the Read module. The maximum length of 'INTEXTEN' is 4 digits. Also specified in Read are a maximum of 2 attempts for entering digits and an overall time out of 30 seconds. Once the extension is entered, the DialNumber module reads the value of 'INTEXTEN' and connects the call flow to the corresponding extension.

Caller is transferred to an internal application

This template shows how to use the DialNumber module. It allows to call any internal or external phone, as well as any internal dial plan application.

Caller is transferred to an internal application

Within this call flow, DialNumber calls '000047', a default application that reads back the IP address of the phone system.

Fallback to Queue

The Fallback to Queue call flow gives an example of using the Queue module in combination with the If module.

Fallback to Queue

If the phone selected in Extension is answered within the specified time out, the call flow ends here. If the call is not answered within the time out , the call is forwarded to the Queue. A Queue needs at least one QueueMember.

Basic time switch example

The Time Switch module makes certain parts of the call flow available for example during business hours. It allows alternative call handling if calls come in outside of business hours. The desired time intervals can be specified by clicking on Askozia options.png.

Basic time switch example

The call flow follows the green label of Time Switch, as long as the call takes place within the specified time window. In this case, within the Basic time switch example call flow, callers hear a welcome message and are forwarded to an internal extension.

Otherwise, the call flow follows the red label. Callers hear a message informing them to call tomorrow and the call will be terminated. Both messages are specified in a Text2Speech module.

Direct Inward System Access (DISA)

This template provides a basic example for Direct Inward System Access (DISA) with authentication.

An external caller can access internal phone system features by entering a PIN. The caller is free to dial any internal and external number. The basic idea behind DISA (or Call Through) is enabling authorized users outside the office to make calls using the company's low rates and to have the same caller ID as when using their desk phone in the office.

Direct Inward System Access (DISA)

First the caller has to enter the PIN specified in the Authentification module. After entering the PIN, the caller is asked to enter an extension. The announcement is specified in Text2Speech.

The entered extension is saved in the 'INTEXTEN' variable of the Read module and defined with a maximum length of 30 digits, a maximum of 2 attempts for entering digits and a timeout of 30 seconds.

Once it is entered, the DialNumber module reads the value of 'INTEXTEN' and connects the call flow to the extension.


DISA with authentication via CallerID

In this example of DISA one doesn't need to enter an authentication password. AskoziaPBX checks the incoming CallerID. If the CallerID is matching with the configuration (in this example 0123412345), you can enter the DISA. If not, the call will be dropped.

DISA with authentication via CallerID

IVR

The IVR templates provide examples for call flows including Interactive Voice Response (IVR).

The chapter follows the order of templates as used in the Call Flow Editor.

Basic IVR example

The Basic IVR example template provides a basic example for Interactive Voice Response (IVR).

Basic IVR example

Upload or record a message with the PressExtensionMusic module to inform callers about their options. After hearing the message, the caller gets connected to an internal phone by pressing '1' or '2'.

By entering an invalid extension, the caller is forwarded to ExtensionI. If the caller does not enter an extension within the specified time out of 5 seconds, the call is forwarded to ExtensionT. In this example, the caller hears the busy tone for 3 seconds and the call is terminated on both occasions.

Basic IVR example with text to speech engine

This template provides a basic example for Interactive Voice Response (IVR) in combination with Text2Speech.

Basic IVR example with text to speech engine

The welcome message and the IVR message are created with Text2Speech modules. After hearing both messages, the caller has 5 seconds to press an extension as specified in the PressExtension module. If pressing '1', the caller will get connected to an internal phone. If entering an invalid extension or not entering any extension at all, the caller will hear the busy signal for 3 seconds and the call will be terminated.

Basic Queue example

This template provides a basic Queue example, including three QueueMember modules and a time out path. The time out path is leading to a Busy module in case the time out is exceeded for a caller that is still waiting.

Basic Queue example

All phones connected to this Queue module are ringing simultaneously. Every 20 seconds the announcement is repeated. Each queue member (agent) has a break of 30 seconds before receiving the next call. If nobody answers the call within the specified time out of 300 seconds, the call flow follows the time out path. In this case. the caller hears the busy tone for 3 seconds and the call is dropped.

Basic language selector

The Basic language selector template includes Interactive Voice Response (IVR) as well as Text2Speech, Set Language and Voicemail modules.

Basic language selector

The caller first hears a message about the possible options. This template allows to choose a language by pressing one or two. If '1' is pressed, the language will be set to English. If '2' is pressed, the language will be set to German. Afterwards, the caller hears the voicemail announcement in the chosen language and can leave a message. A time out of 5 seconds is specified in PressExtension. If neither '1' or '2' is pressed within this time, the call is dropped.

Complex

The Complex templates focus on If, Switch, Goto, Read and SayDigits modules.

The chapter follows the order of templates as used in the Call Flow Editor.

Example with ChanIsAvailable and Switch

This template provides a basic example using the ChanIsAvailable and Switch modules.

Example with ChanIsAvailable and Switch

The Switch module uses the outgoing label related to the first condition to be true. If none if them is true, the default label is used. In this example, the Switch module decides about the next step depending on the status of ChanIsAvailable. If the phone is busy, the caller hears the busy signal for 3 seconds. If the phone is unavailable, WaitMusicOnHold plays music to the caller for the specified time out of 10 seconds. After 10 seconds, Goto goes back to ChanIsAvailable. If all conditions are false, the call flow follows the default label and the caller hears the busy signal for 3 seconds.

Example with Read and SayDigits

This template illustrates the usage of Read and SayDigits. The caller is allowed to enter 2 digits. Afterwards, the call flow reads the digits to the caller.

Example with Read and SayDigits

Read saves the entered digits in the 'test' variable. The 'test' variable has a maximum length of 2 digits. Read allows 3 attempts to enter digits. The specified time out for entering digits is 30 seconds. SayDigit reads the value of 'test' to the caller and the call is terminated.

Example with Read, SetLanguage and SayDigits

In this template, the caller can enter 2 digits and listen to them in the selected language.

Example with Read, SetLanguage and SayDigits

Read saves the entered digits in the 'test' variable. It has a maximum length of 2. Read allows 3 attempts to enter digits. The specified time out for entering digits is 30 seconds. Select the desired language in the Set Language module. SayDigits reads the value of 'test' to the user in the selected language and the call will be terminated.

Basic If example

The Basic If example call flow gives a basic example of using the If module.

Basic If example

If gets its input from the Extension module it is connected to. If the selected phone is answered within the timeout of 10 seconds, the call flow follows the green label and the call is terminated after hanging up. If the phone isn't answered within 10 seconds, the call flow follows the red label and the call goes to Voicemail.

Check a calls origin

With this call flow it's possible to check the incoming callerID for it's origin. After that, the callerID will be manipulated, so that the agent can see if the call comes from i.e. Germany. To check the callerID, please use the Command module and use the command line below.

Set(RESULT=${REGEX("(^0049[0-9]+$)|(^49[0-9]+$)|(^0[1-9][0-9]+$)" ${CALLERID(num)})})

Check of the incoming callerID

This call flow says that every incoming call comes from Germany, which have dial patterns as seen below.

0049X.
0[1-9]X.
49X.

In the second step, with the command line below, the call flow checks, if there is a callerID anyway. If yes, it shows on the display, that the call is from abroad. If there is no callerID sent, the display on the phone would show, that the call is anonymous.

Set(RESULT=${REGEX("[0-9]." ${CALLERID(num)})})

Personal tools
Namespaces

Variants
Actions
Navigation
Getting Started
AskoziaPBX
Call Flow Editor
PRI
CTI
Tools