Transferring overview

https://wiki.asterisk.org/wiki/display/AST/Feature+Code+Call+Transfers In Asterisk, a user can transfer a phone call. Transferring a call involves redirecting an existing call to a new location or user. This can be done using two different transfer methods, a blind transfer or an attended transfer. The first transfer method is the blind transfer. Using this method you can dial a […]

IVR loop control

As of the previous lesson, if a user started the IRV menu and timed out, they would then start the main menu over again. And then if they timeout out again, the process would start over again, and again, and again. We would then have an endless loop that would never end until the user […]

IVR invalid extensions and timeout

Although your options from the main IVR menu may be clear, there will always be someone who decides to push a wrong option number. To handle this we can use the extension “i”, which will act as a catch all for all invalid options. Typically when a user presses a wrong option number they are […]

IVR in the dialplan

Create a new context in the dialplan for the IVR. If you do plan on having more that one IVR it will be a good idea to create separate IVRs. In this course we will use just one IVR. In the new context we can start the first extension with the letter “s” to indicate […]

Recording IVR Voice Prompts

Create a folder in the /usr/share/asterisk/sounds/ directory to place your IVR audio recordings. To do this I will use the command: sudo mkdir /usr/share/asterisk/sounds/ivrsudo mkdir /usr/share/asterisk/sounds/ivr For the best audio quality it would be recommended that you use professional recording equipment, edit and convert the audio to a format Asterisk can use, then upload the […]

Designing the IVR

Interactive voice response (IVR) is a system that allows a computerized phone system to interact with users through the use of voice and keypad options. Anytime you have called a phone number and been given a choice to press a key to choose a different language, dial an extension, or be directed to a department, […]

Converting Audio Files for Asterisk

Today the most common file format for music is mp3. Mp3’s are heavily compressed audio files and require a lot of CPU power to uncompress and play the files. Audio files can be converted into a more Asterisk friendly format to conserve CPU power. In this lesson we will convert an mp3 file to an […]

Configuring the dialplan-2

Extension 300 in the dialplan will need to be changed from the previous lesson to both include an Answer() application as well as setting the musicclass of the channel to the techteam context in the musiconhold.conf file. exten => 300,1,NoOp(Tech Team) same => n, Set(CHANNEL(musicclass)=techteam) same => n, Answer same => n, Queue(techteam,,,,120) #120 is […]

The musiconhold.conf file

The musiconhold.conf file is located at /etc/asterisk/musiconhold.conf. To start we can move the file to musiconhold.conf.sample and start with a new file. To do this, use the command: sudo mv /etc/asterisk/musiconhold.conf /etc/asterisk/musiconhold.conf.samplesudo mv /etc/asterisk/musiconhold.conf /etc/asterisk/musiconhold.conf.sample Now to create a new file we can use the command: sudo nano /etc/asterisk/musiconhold.confsudo nano /etc/asterisk/musiconhold.conf The original file has […]

Dynamic Queues – Advanced Part 2

In this lesson the dialplan extensions will be modified to add and remove the user that is calling the extension. We will use the CHANNEL variable. The CHANNEL(channeltype) value displays the protocol the user is connecting with, for example SIP. The CHANNEL(peername) value holds the name of the user context. We can replace “SIP/chaz” from […]