1. SayDigits is a dial plan application that says a given number digit by digit. The number should be passed to the application as parameter.

NOTE: This application is valid for Asterisk version 1.0.9 and above.

Syntax:

SayDigits(number) : the number that you want to be said by the application must be given as argument.

Possible values for the number argument are each positive number.

Purpose and usage

The purpose of this dial plan application is to say a given number digit by digit. The argument that you assign to the application can be except regular number also an Asterisk PBX variable. You must be sure that the variable that you want to use is numeric, if other characters than digits are found error will be returned. When all digits from the number are said, or error is returned in case of an improper usage, the application with next priority will be executed.

Below you can find an example for the possible usage of the application.

Prerequisites

First of all you need to install Asterisk PBX. Afterwards you need to configure at least one user in iax.conf, sip.conf or mgcp.conf – the protocol you are going to use depends on you or of the phone you are using. After this you need to write some extensions in extensions.conf.

In this tutorial I will use Idefisk softphone that is an IAX client. You can download it by clicking here. Tutorial showing how it works and configuration support can be found here.

Asterisk PBX configurations

NOTE: This is just an example of what you can use this application for. Of course you can use it and for other purposes.

When you have installed and working Asterisk PBX you will need some user to test this application. If you do not have any registered in iax.conf you may add the following one. If you are not going to user Idefisk Softphone and iax.conf you have to register the user in the same way in sip.conf, h323.conf or mgcp.conf – depending on the protocol you are using.

Above I registered a user [ivan] with the properties:

type=friend (type might be user – just can call, peer – just can be called and friend – can call and can be called)

username=ivan – this is the user which must authenticate when connecting to the Asterisk PBX server

context=test is the context from extensions.conf which the user can access (including any other context which is/are included in this one)

secret=ivan is the password with which the user must authenticate when connecting to the Asterisk server

host=dynamic means that the host for this user is dynamic and he/she can connect to Asterisk PBX from different computers (host may be defined with static ip address)

Allow=all means that all audio codecs are allowed (You can allow certain codecs as well as disallow others)

We now have a user that can use the context test from extensions.conf. So now we need some dial plan application in [test] in extensions.conf.

Here is the application in extensions.conf:

exten => 345,1,Answer()

the call is answered

exten => 345,2,Playback(welcome)

welcome message is played on playback

exten => 345,3,SayDigits(1234567890)

the number 1234567890 is said digit by digit

exten => 345,4,SayDigits(${EXTEN})

${EXTEN} is predefined variable that returns the extension you have dialed. So in this case 345 will be said digit by digit

exten => 345,5,Playback(vm-goodbye)

goodbye message is played

exten => 345,6,Hangup()

hangup() closes the line

2. The application in CLI

3. Additional information

For more information about extensions.conf you can check here.
For more information about iax.conf you can check here.

This application is tested with our IAX softphone Idefisk. You can download it from here. For more information about this softphone please read our tutorial.

If you would like to test this application with the SIP channel you can read our tutorials about the SIP Softphones to learn how to configure them to work with Asterisk PBX