Access to Voicemail
REQUIREMENTS
Voicemail name must be the same of the sip name (e.g. john.doe).
The voicemail password must be numeric (e.g. 0000).
HOW IT WORKS
Access to voicemail can be handled by using ivr script and a custom application (VoiceMailMain).
You need to set two different dial plans:
An internal DID that need to execute the custom application (VoiceMailMain). The application VoiceMailMain allows you to manage the voicemail messages.
An external DID to access to the ivr script. The ivr asks the voicemail extension you want to check and performs the query to xcally db to retrieve the voicemail name (sip name). Then the call goes to the internal dialplan to execute the VoiceMailMain application.
THE IVR SCRIPT
Variables
Add two channel variables: VM_EXT and VM_USER
Database
Set the DB connection
Sounds
Upload the audio file
Design
Block details
GetDigit block settings
Database block settings
GoTo block settings
Where *1000 is the DID of internal dial plan we use to execute the VoiceMailMain application
DIAL-PLAN SETTINGS
The external inbound dialplan
Add an external inbound dial-plan and set a DID you want to use to check the voicemail boxes
In the advanced settings add the cally square project
The internal inbound dialplan
Add an internal inbound dial plan and set the DID *1000 (or the same you use in the GOTO block).
In the advanced settings add a Custom Application:
Application name: VoiceMailMain
Params: ${VM_USER[0][name]}@from-voicemail
Your remote access to check the voicemails is ready!
Email notification for inbound calls
A system application can be used in IVR to send an email notification whenever an inbound call is received. The following example show a simple IVR where an incoming call is routed to a menu option.
In the menu, we insert the name of audio file to be played and we set appropriate values to response timeout, max digit and retry. We need to select a variable that will store the option selected by the caller.
System application: The following is a command for sending email using mailx. (To install mailx use “ sudo yum install mailx”)
echo -e " This is the Body" | mail -s "This is the Subject" -r "<sender@example.com>" recipient@example.com
Body message : " Caller Number: {CALLERID(num)} Choice: {CHOICE} Call Time: {CDR(ANSWER)} "
Subject : "Caller Info"