voipmeister.com voip stuff matters and more

Articles tagged with CME

Forwarding incoming calls to external destinations on CME

The other day I was working on a setup that would forward an incoming call to an external destination using an ISDN BRI interface. This would come in handy if nobody’s at the office, but you don’t want to miss calls placed to the main number. Time and again my attempts were failing with:

Cause i = 0×82E46C – Invalid information element contents

Searching the Internets for this cause code didn’t yield many results, but I did find some documentation on the Cisco website: Call Forward from CallManager Express to an External Number Fails. CME might also use the original calling number for the inbound call as the calling number for the outbound call leg. To prevent this from happening, you can use outgoing translation rules. A likely indication that this might work for you would be:

Cause i = 0×829C – Invalid number format(incomplete number) 

This didn’t solve my problem. In the end it turned out to be the numbering plan type as somebody pointed out. I configured the following, which made it work:

interface bri 0/0
 isdn map address . plan unknown type unknown
!

Connecting Cisco CME to Voipbuster

Here’s something I’ve been looking forward to for a long time: connecting Cisco Call Manager Express to Voipbuster for outbound calls (inbound will be covered in another article). The Internets aren’t exactly flooded with examples like that.

This example uses the FQDN name for the Voipbuster service. Let’s define the prerequisites for this quest:

  • A Voipbuster account;
  • DNS Resolving on our router;
  • An outbound dial peer;
  • A sip-ua configuration;
  • A translation rule and profile (I don’t want to dial international numbers for local calls).

Step 1

Get a Voipbuster account if you don’t already have one.

Test for this step: Login with your account details on the Voipbuster website.

Step 2

We need to configure DNS servers and tell the router to perform DNS lookups just like so:

ip name-server a.b.c.d
ip name-server w.x.y.z
ip domain-lookup

With a.b.c.d and w.x.y.z being the IP addresses of the primary and secondary DNS servers used by your provider.

Test for this step: Try to ping sip1.voipbuster.com from the router prompt and see if the name is being resolved.

Step 3

Configuring a dial peer to route outbound traffic to Voipbuster:

dial-peer voice 10 voip
 description Voipbuster Outbound
 destination-pattern 00T
 progress_ind setup enable 3
 voice-class codec 1
 session protocol sipv2
 session target dns:sip1.voipbuster.com
 dtmf-relay rtp-nte
 no vad
!

In this case, all numbers prefixed with “00″ are being sent to Voipbuster.

Step 4

Define the sip-ua part:

sip-ua
 authentication username USERNAME password PASSWORD
 retry invite 3
 retry response 3
 retry bye 3
 retry cancel 3
 timers expires 300000
 registrar dns:sip1.voipbuster.com expires 3600
!

You need to substitute USERNAME and PASSWORD with your username and password, obviously.

Step 5

Create a translation rule and profile, then, apply the translation profile to the Voipbuster dial peer:

voice translation-rule 1
 rule 1 /^0/ /0031/
!
voice translation-profile Strip0Add0031
 translate calling 1
!
dial-peer voice 10 voip
 translation-profile outgoing Strip0Add0031
!

Test for this step: Test the new rule with the following command and check for the output, it should show something alike:

test voice translation-rule 1 0521234567
Matched with rule 1
Original number: 0521234567       Translated number: 0031521234567

Update 2009.09.14

I experienced call delays when dialing out. Turned out I forgot about the interdigit timeout configuration:

telephony-service
  timeouts interdigit 3
!

Todo and new questions:

  • Explain the various settings
  • Add troubleshooting hints & tips
  • What about incoming Voipbuster calls?
  • Is it possible to register to multiple SIP servers simultaneously?

How to broadcast a call with CME

Here’s how to broadcast a call with Cisco Callmanager Express. You will need to use the overlay DN functionality. In this case we want to broadcast calls to DN 100 on two phones.

First, you define 2 ephone-dn’s with the number you want to broadcast calls for:

ephone-dn 98 dual-line
number 100
huntstop channel
no huntstop
!
ephone-dn 99 dual-line
number 100
preference 1
huntstop channel
!

Then, you use the overlay feature to add multiple ephone-dn’s to 1 button on the ephone’s:

ephone 101
button 1o101,98,99
!
ephone 102
button 1o102,98,99
!

This has been tested and approved on CCME 4.0(3).