Cisco CallManager Express - voicepulse

Updated 12-21-2008 by endrnet


Intro.


If you want to setup voicepulse (vp for short) service with a Cisco CallManager Express IOS router, this is the right place. There are no doubt tweaks that could improve what I've done, however it works for me.

Basics.


1) Voicepulse.com SIP trunk
2) Cisco CallManager Express
3) 3 Analog phones
4) 3 Cisco VOIP phones (7940, 7960, 7965)

Missing.


1) Business-style dialplan (9 for outside line, etc)
2) Voicemail backend to Asterisk with MWI integration

Caveats.


The configuration directives are voice related only. I was unable to make this work behind a NAT, Fa0/0 is a real Internet IP. If you're interested in SIP trunks over NAT, this is probably not a good starting point. The main symptom I could not solve was the router receiving SIP messages with the outside IP embedded. Perhaps a SIP APG would work.

Additionally, I sanitized my configuration with a number of search/replace operations to protect the innocent. That search/replace might have broken something, but probably not. blah.blah.tld is a DDNS host. 10.20.30.4 is a tftp server, dns server, and ddns registration point. You can put these services on the router directly if you prefer.

Help.


If you want professional help from me, I can be found at voipNOSPAM@endr.net.

Config.


ip domain name blah.local
ip name-server 10.20.30.4

voice service voip
 allow-connections sip to sip
 no supplementary-service sip moved-temporarily
 no supplementary-service sip refer
 sip
  registrar server
  localhost dns:blah.blah.tld
!
!
voice class codec 1
 codec preference 1 g711ulaw
!
!
voice register global
 mode cme
 source-address 10.20.30.1 port 5060
 load 7965 term65.default
 load 7960-7940 P0S3-08-10-00
 authenticate register
 timezone 13
 tftp-path tftp://10.20.30.4
 create profile 
 ntp-server 10.20.30.4 mode unicast
!
voice register dn  1
 number 333
 name Office
 no-reg
 label Home 555-1000    333
!
voice register dn  2
 number 334
 name Living Room
 no-reg
 label Home 555-1000    334
!
voice register dn  3
 number 335
 name Bedroom
 no-reg
 label Home 555-1000    335
!
voice register dn  4
 number 444
 no-reg
 label Work 555-2000    444
!
voice register dn  5
 number 445
 label Work 555-2000    445
!
voice register dn  6
 number 446
 label Work 555-2000    446
!
voice register template  1
 dialplan 1
!
voice register dialplan  1
 type 7940-7960-others
 pattern 1 1..........
 pattern 2 ....... timeout 2
 pattern 3 011.* timeout 2
!
voice register pool  1
 id mac xxxx.xxxx.xxxx
 type 7965
 number 1 dn 1
 number 2 dn 4
 template 1
 dtmf-relay rtp-nte
 voice-class codec 1
 username 7965 password cisco
 description Office
 no vad
!
voice register pool  2
 id mac yyyy.yyyy.yyyy
 type 7960
 number 1 dn 2
 number 2 dn 5
 template 1
 dtmf-relay rtp-nte
 voice-class codec 1
 username 7960 password cisco
 description Living Room
 no vad
!
voice register pool  3
 id mac zzzz.zzzz.zzzz
 type 7940
 number 1 dn 3
 number 2 dn 6
 template 1
 dtmf-relay rtp-nte
 voice-class codec 1
 username 7940 password cisco
 description Bedroom
 no vad
!
voice hunt-group 1 parallel
 final 300
 list 300,333,334,301,302
 timeout 120
 pilot 600
!
!
voice hunt-group 2 parallel
 final 444
 list 444,445
 timeout 120
 pilot 601
!
voice translation-rule 1
 rule 1 /12125551000/ /600/
!
voice translation-rule 2
 rule 1 /12125552000/ /601/
 rule 2 /4../ /3025552000/
!
voice translation-rule 3
 rule 1 /3../ /3025551000/
 rule 2 /4../ /3025552000/
!
voice translation-rule 4
 rule 1 /\(.......\)/ /1212\1/
!
!
voice translation-profile home_in
 translate called 1
 translate redirect-called 1
!
voice translation-profile pstn_out_intl
 translate calling 3
!
voice translation-profile pstn_out_ld
 translate calling 3
!
voice translation-profile pstn_out_local
 translate calling 3
 translate called 4
 translate redirect-called 4
!
voice translation-profile work_in
 translate called 2
 translate redirect-called 2
!
interface FastEthernet0/0
 ip address dhcp
 ip nat outside
!
interface FastEthernet0/1
 ip address 10.20.30.1 255.255.255.0
 ip nat inside
!
ip nat inside source list 5 interface FastEthernet0/0 overload
!
access-list 5 permit 10.20.30.0 0.0.0.255
!
voice-port 1/0/0
 station-id name 300
 station-id number 300
 caller-id enable
!
voice-port 1/0/1
 station-id name 301
 station-id number 301
 caller-id enable
!
voice-port 1/0/2
 station-id name 302
 station-id number 302
 caller-id enable
!
dial-peer voice 300 pots
 description Analog1
 destination-pattern 300
 port 1/0/0
 no sip-register
!
dial-peer voice 301 pots
 description Analog2
 destination-pattern 301
 port 1/0/1
 no sip-register
!
dial-peer voice 302 pots
 description Analog3
 destination-pattern 302
 port 1/0/2
 no sip-register
!
dial-peer voice 1001 voip
 translation-profile incoming work_in
 voice-class codec 1
 session protocol sipv2
 session target sip-server
 incoming called-number 12125552000
 dtmf-relay rtp-nte
!
dial-peer voice 1002 voip
 translation-profile incoming home_in
 voice-class codec 1
 session protocol sipv2
 session target sip-server
 incoming called-number 12125551000
 dtmf-relay rtp-nte
!
dial-peer voice 2001 voip
 translation-profile outgoing pstn_out_local
 preference 1
 destination-pattern [2-9]......
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-primary.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 2002 voip
 translation-profile outgoing pstn_out_ld
 preference 1
 destination-pattern 1[2-9]..[2-9]......
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-primary.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 2003 voip
 translation-profile outgoing pstn_out_intl
 preference 1
 destination-pattern 011.T
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-primary.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 3001 voip
 translation-profile outgoing pstn_out_local
 preference 2
 destination-pattern [2-9]......
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-backup.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 3002 voip
 translation-profile outgoing pstn_out_ld
 preference 2
 destination-pattern 1[2-9]..[2-9]......
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-backup.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 3003 voip
 translation-profile outgoing pstn_out_intl
 preference 2
 destination-pattern 011.T
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-backup.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
!
sip-ua
 authentication username vp-username password vp-password realm jfk-primary.voicepulse.com
 authentication username vp-password password vp-password realm jfk-backup.voicepulse.com
 registrar dns:jfk-primary.voicepulse.com expires 60
 registrar dns:jfk-backup.voicepulse.com expires 60 secondary
!
telephony-service
 em logout 0:0 0:0 0:0
 max-dn 144
 max-conferences 8 gain -6
 transfer-system full-consult
 create cnf-files version-stamp Jan 01 2002 00:00:00
!
!
ephone-dn  1
 number 12125551000
!
!
ephone-dn  2
 number 12125552000
!
!

Updated 12-21-2008 by endrnet


Intro.


If you want to setup voicepulse (vp for short) service with a Cisco CallManager Express IOS router, this is the right place. There are no doubt tweaks that could improve what I've done, however it works for me.

Basics.


1) Voicepulse.com SIP trunk
2) Cisco CallManager Express
3) 3 Analog phones
4) 3 Cisco VOIP phones (7940, 7960, 7965)

Missing.


1) Business-style dialplan (9 for outside line, etc)
2) Voicemail backend to Asterisk with MWI integration

Caveats.


The configuration directives are voice related only. I was unable to make this work behind a NAT, Fa0/0 is a real Internet IP. If you're interested in SIP trunks over NAT, this is probably not a good starting point. The main symptom I could not solve was the router receiving SIP messages with the outside IP embedded. Perhaps a SIP APG would work.

Additionally, I sanitized my configuration with a number of search/replace operations to protect the innocent. That search/replace might have broken something, but probably not. blah.blah.tld is a DDNS host. 10.20.30.4 is a tftp server, dns server, and ddns registration point. You can put these services on the router directly if you prefer.

Help.


If you want professional help from me, I can be found at voipNOSPAM@endr.net.

Config.


ip domain name blah.local
ip name-server 10.20.30.4

voice service voip
 allow-connections sip to sip
 no supplementary-service sip moved-temporarily
 no supplementary-service sip refer
 sip
  registrar server
  localhost dns:blah.blah.tld
!
!
voice class codec 1
 codec preference 1 g711ulaw
!
!
voice register global
 mode cme
 source-address 10.20.30.1 port 5060
 load 7965 term65.default
 load 7960-7940 P0S3-08-10-00
 authenticate register
 timezone 13
 tftp-path tftp://10.20.30.4
 create profile 
 ntp-server 10.20.30.4 mode unicast
!
voice register dn  1
 number 333
 name Office
 no-reg
 label Home 555-1000    333
!
voice register dn  2
 number 334
 name Living Room
 no-reg
 label Home 555-1000    334
!
voice register dn  3
 number 335
 name Bedroom
 no-reg
 label Home 555-1000    335
!
voice register dn  4
 number 444
 no-reg
 label Work 555-2000    444
!
voice register dn  5
 number 445
 label Work 555-2000    445
!
voice register dn  6
 number 446
 label Work 555-2000    446
!
voice register template  1
 dialplan 1
!
voice register dialplan  1
 type 7940-7960-others
 pattern 1 1..........
 pattern 2 ....... timeout 2
 pattern 3 011.* timeout 2
!
voice register pool  1
 id mac xxxx.xxxx.xxxx
 type 7965
 number 1 dn 1
 number 2 dn 4
 template 1
 dtmf-relay rtp-nte
 voice-class codec 1
 username 7965 password cisco
 description Office
 no vad
!
voice register pool  2
 id mac yyyy.yyyy.yyyy
 type 7960
 number 1 dn 2
 number 2 dn 5
 template 1
 dtmf-relay rtp-nte
 voice-class codec 1
 username 7960 password cisco
 description Living Room
 no vad
!
voice register pool  3
 id mac zzzz.zzzz.zzzz
 type 7940
 number 1 dn 3
 number 2 dn 6
 template 1
 dtmf-relay rtp-nte
 voice-class codec 1
 username 7940 password cisco
 description Bedroom
 no vad
!
voice hunt-group 1 parallel
 final 300
 list 300,333,334,301,302
 timeout 120
 pilot 600
!
!
voice hunt-group 2 parallel
 final 444
 list 444,445
 timeout 120
 pilot 601
!
voice translation-rule 1
 rule 1 /12125551000/ /600/
!
voice translation-rule 2
 rule 1 /12125552000/ /601/
 rule 2 /4../ /3025552000/
!
voice translation-rule 3
 rule 1 /3../ /3025551000/
 rule 2 /4../ /3025552000/
!
voice translation-rule 4
 rule 1 /\(.......\)/ /1212\1/
!
!
voice translation-profile home_in
 translate called 1
 translate redirect-called 1
!
voice translation-profile pstn_out_intl
 translate calling 3
!
voice translation-profile pstn_out_ld
 translate calling 3
!
voice translation-profile pstn_out_local
 translate calling 3
 translate called 4
 translate redirect-called 4
!
voice translation-profile work_in
 translate called 2
 translate redirect-called 2
!
interface FastEthernet0/0
 ip address dhcp
 ip nat outside
!
interface FastEthernet0/1
 ip address 10.20.30.1 255.255.255.0
 ip nat inside
!
ip nat inside source list 5 interface FastEthernet0/0 overload
!
access-list 5 permit 10.20.30.0 0.0.0.255
!
voice-port 1/0/0
 station-id name 300
 station-id number 300
 caller-id enable
!
voice-port 1/0/1
 station-id name 301
 station-id number 301
 caller-id enable
!
voice-port 1/0/2
 station-id name 302
 station-id number 302
 caller-id enable
!
dial-peer voice 300 pots
 description Analog1
 destination-pattern 300
 port 1/0/0
 no sip-register
!
dial-peer voice 301 pots
 description Analog2
 destination-pattern 301
 port 1/0/1
 no sip-register
!
dial-peer voice 302 pots
 description Analog3
 destination-pattern 302
 port 1/0/2
 no sip-register
!
dial-peer voice 1001 voip
 translation-profile incoming work_in
 voice-class codec 1
 session protocol sipv2
 session target sip-server
 incoming called-number 12125552000
 dtmf-relay rtp-nte
!
dial-peer voice 1002 voip
 translation-profile incoming home_in
 voice-class codec 1
 session protocol sipv2
 session target sip-server
 incoming called-number 12125551000
 dtmf-relay rtp-nte
!
dial-peer voice 2001 voip
 translation-profile outgoing pstn_out_local
 preference 1
 destination-pattern [2-9]......
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-primary.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 2002 voip
 translation-profile outgoing pstn_out_ld
 preference 1
 destination-pattern 1[2-9]..[2-9]......
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-primary.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 2003 voip
 translation-profile outgoing pstn_out_intl
 preference 1
 destination-pattern 011.T
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-primary.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 3001 voip
 translation-profile outgoing pstn_out_local
 preference 2
 destination-pattern [2-9]......
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-backup.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 3002 voip
 translation-profile outgoing pstn_out_ld
 preference 2
 destination-pattern 1[2-9]..[2-9]......
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-backup.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
dial-peer voice 3003 voip
 translation-profile outgoing pstn_out_intl
 preference 2
 destination-pattern 011.T
 voice-class codec 1
 session protocol sipv2
 session target dns:jfk-backup.voicepulse.com
 dtmf-relay rtp-nte
 no vad
!
!
sip-ua
 authentication username vp-username password vp-password realm jfk-primary.voicepulse.com
 authentication username vp-password password vp-password realm jfk-backup.voicepulse.com
 registrar dns:jfk-primary.voicepulse.com expires 60
 registrar dns:jfk-backup.voicepulse.com expires 60 secondary
!
telephony-service
 em logout 0:0 0:0 0:0
 max-dn 144
 max-conferences 8 gain -6
 transfer-system full-consult
 create cnf-files version-stamp Jan 01 2002 00:00:00
!
!
ephone-dn  1
 number 12125551000
!
!
ephone-dn  2
 number 12125552000
!
!

Created by: endrnet, Last modification: Mon 11 of Jun, 2012 (03:44 UTC) by admin
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+