0

I have an existing Cisco CallManager 8.5 environment which services users needing voicemail, but I have no Unity licenses. How can I use Asterisk to service voicemail?

CCM and Asterisk network

2 Answers 2

0

Setup asterisk to have a SIP peer to the CCM server or ISR. Make sure to specify the voicemail pilot as the vmexten, or you will get SIP 404 errors later.

sip.conf

[general]
context=from-external-untrusted
limitonpeers=yes
promiscredir=yes
videosupport=yes
directrtpsetup=no
directmedia=no
; be sure to specify your Asterisk VM pilot as configured in
; extensions.conf, or MWI will fail with SIP 404 errors.
vmexten=7225

; codecs
dtmfmode=rfc2833
disallow=all
allow=ulaw

; comm
bindport=5060
bindaddr=10.2.3.4
srvlookup=yes
tcpenable=yes
tcpbindaddr=0.0.0.0
transport=tcp,udp

;-----------------------------------------------------------------------
; TRUNKS
;-----------------------------------------------------------------------
[ccm1]
type=peer
host=10.200.34.10
port=5060
context=from-net

Setup your dialplan to include a pilot number that works with your CCM dialplan. I have used 7225 in this example:

extensions.conf

[general]
static=yes
writeprotect=no
autofallthrough=yes
clearglobalvars=yes
userscontext=from-internal

[from-net]
include => to-internal

[to-internal]
include => to-vmpilot

[to-vmpilot]
; If we get called directly, rdnis will not be specified.  Default it
; to the dialed extension
exten => 7225,1,Set(CALLERID(rdnis)=$[0${CALLERID(rdnis)}|${EXTEN}])
exten => 7225,n,Goto(to-vm,${CALLERID(rdnis)},1)

[to-vm]
exten => _X.,1,GotoIf($["${CALLERID(num)}" = "${CALLERID(rdnis)}"]?pilot,1)
exten => _X.,n,GotoIf($["7225" = "${CALLERID(rdnis)}"]?pilot,1)
exten => _X.,n,Voicemail(${EXTEN}@default)
exten => pilot,1,VoiceMailMain(${CALLERID(num)}@default)

On the Cisco side, verify that you have a SIP Security Profile which specifies "Accept Unsolicited Notification", add a SIP Profile set up to use it. Create a new trunk pointed at the Asterisk server. Make sure to specify an "Inbound Calls - Calling Search Space" which can reach all DN's that need MWI. Make sure that "Outbound Calls - Redirecting Diversion Header Delivery - Outbound" is specified so that you receive RDNIS information at Asterisk.

Screenshot showing configured sip trunk

Add a route pattern which includes the pilot number:

Screenshot showing route pattern for 722X to L-Asterisk1

Setup a new voicemail profile and pilot:

Voicemail Profile for Asterisk

VM Pilot for 7225 to Asterisk

Set a DN to use the newly created voicemail profile and create a mailbox in voicemail.conf.

voicemail.conf

[general]
format=ulaw
[email protected]
attach=no
skipms=3000
maxsilence=10
silencethreshold=128
maxlogins=3
emaildateformat=%A, %B %d, %Y at %r
pagerdateformat=%A, %B %d, %Y at %r

[zonemessages]
central24=America/Chicago|'vm-received' q 'digits/at' H N 'hours'

[default]
; 5418 = Extension
; 1234 = Pin
5418 => 1234,Example Mailbox 2,[email protected]

When a voicemail is left, the Message Waiting Light should come on. The user should be able to press the "Messages" key on their phone to retrieve the voicemail, which will turn the MWI lamp off.

0

For the people who are still looking for a solution - Here is the video link which talks about how to integrate CUCM with Asterisk as VM along with MWI fix.

https://youtu.be/PjxkYmH9rP0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .