cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
9950
Views
20
Helpful
28
Replies

CME Configuration - 7 vs 10 digit dialing

jameskuder
Level 1
Level 1

On our CME System, when users try to dial a local phone number within the same area code, they call only completes if you dial 10 digits. Is there a way to allow them the ability to dial 7 or 10 digits to complete the local call?

5 Accepted Solutions

Accepted Solutions

gmgarrian
Level 4
Level 4

First question, is it your telco provider that is requiring the 10 digit dialing for local calls?  Or is CME not handling the digits correctly?

If you just want to add the area code to a 7 digit number you can use a translation rule:

http://www.cisco.com/en/US/tech/tk652/tk90/technologies_tech_note09186a0080325e8e.shtml#type_plan

Setting these up can be confusing at first, but the command "test voice translation-rule" is your friend.  Use that to test the rule before applying it.

View solution in original post

Steven Griffin
Level 4
Level 4

James,

Use a voice translation rule/profile and a voip dial-peer to catch the 7 digit number and translate it onto a 10 digit number

For example, say your area code is 415 and you use loopback 0 as your CME source IP address:

interface loopback0

ip address 10.1.1.1 255.255.255.255

h323-gateway voip bind srcaddr 10.1.1.1

voice class codec 1

codec preference 1 g722-64

codec preference 2 g711ulaw

codec preference 3 g729r8

voice class h323 1

h225 timeout setup 3

voice translation-rule 5

rule 5 /9\([2-9]......\)/ /415\1/

voice translation-profile Seven-to-Ten-Outbound

  translate called 5

dial-peer voice 10 voip

description Outbound 7 Digit to 10 Digit

translation-profile outgoing Seven-to-Ten-Outbound

preference 1

destination-pattern 9[2-9]......

session target ipv4:10.1.1.1

voice-class codec 1

voice-class h323 1

no vad

dial-peer voice 30 pots

description Outbound 10 Digit Dialing

preference 1

destination-pattern 9415T

port 0/0/0:23

forward-digits 10

-Steven

Please help us make the communities better. Rate helpful posts!

View solution in original post

Sorry about the confusing sentence.  I was typing too fast and meant to say:   I just saw those last two posts.

Any way here's what you need to do (expanding on uscitizen's post):

1.  Create your translation rule:

voice translation-rule 7

rule 5 /9\([2-9]......\)/ /415\1/

It doesn't have to be translation-rule 7, you can start with 1.  Also, you'll probably want to start will rule 1 within the rule since these are processed in order.

Lets break it down:

rule 5  --> this is order the rules are matched. Once a match is made, the following rules are ignored.

/9\([2-9]......\)/  --> The info between the / /  variable is what is used to match the called number.  This is saying match any number that starts with 9, the second digit is anything from 2 through 9, and the remaining numbers can be anything, signified by the "."  This is assuming that to dial a 7 digit number a user would dial 9 first for an outside line, then the 7 digits.  Also, notice the \ \ within the config.  This signifies a grouping that will be used in the last part of the config.

/415\1/  --> This last part is what the number will be translated to.  The 415 will be added to any dialed number that matches the first part.  The \1 is addeding that grouping withing the \ \ from the first part. 

2.  Added the translation rule to a profile:

voice translation-profile Seven-to-Ten-Outbound

  translate called 5

The profile is what will be assigned to the dial peer.  So here we're creating a profile called Seven-to-Ten-Outbound which will use translation-rule 5.

3. Apply the profile to your outbound dial peer:

dial-peer voice 10 voip

description Outbound 7 Digit to 10 Digit

translation-profile outgoing Seven-to-Ten-Outbound

preference 1

destination-pattern 9[2-9]......

session target ipv4:10.1.1.1

voice-class codec 1

voice-class h323 1

no vad

Here, when the numbers reach this dial peer for an outgoing call, it will apply that translation rule.

I hope that makes sense.

View solution in original post

All,

There is a small bug in my original config.  The translation rule is numbered 7 but the profile tries to translate rule 5. 

voice translation-rule 7  <--- Change this to 5

rule 5 /9\([2-9]......\)/ /415\1/

Doing this will make it work

-Steven

Please help us make the communities better. Rate helpful posts!

View solution in original post

James,

Since 206 does not include an NXX (central office code) of 425 you can add a rule to allow for the 425 area code to be dialed.  See the following URL for more details: http://www.area-codes.com/area-code/area-code-206.asp

Thus the translation-rule can be modified as follows:

voice translation-rule 5

rule 4 /9\(425.......\)/ /\1/

rule 5 /9\([2-9]......\)/ /206\1/

FYI, this is also why I like to start my numbering rules at 5.  There are cases where you need to add an exception without having to rebuild the entire rule.

-Steven

Please help us make the communities better. Rate helpful posts!

View solution in original post

28 Replies 28

gmgarrian
Level 4
Level 4

First question, is it your telco provider that is requiring the 10 digit dialing for local calls?  Or is CME not handling the digits correctly?

If you just want to add the area code to a 7 digit number you can use a translation rule:

http://www.cisco.com/en/US/tech/tk652/tk90/technologies_tech_note09186a0080325e8e.shtml#type_plan

Setting these up can be confusing at first, but the command "test voice translation-rule" is your friend.  Use that to test the rule before applying it.

Thanks. I am still new to this and now confused. I am trying to make is any calls to the 206 area code from any of the office phones will process the call whether the 206 is dialed or not.

James,

The NANP website is a great source of information about area codes and what rules apply to them.  http://www.nanpa.com

Pulling a report about area code 206 I see that 7 digits are allowed but 10 digits may also be permitted.

Visit: http://www.nationalnanpa.com/nas/public/npa_query_step1.do?method=resetNpaReportModel  and then enter your area code.

In this case your users should be able to dial 206 area code numbers from phones located in the 206 area code by using the following patterns.  I am assuming 9 is your off-net access code and I'll use 555 1212 as the example number:

9 555 1212

9 206 555 1212

9 1 206 555 1212

Note, the last number may/may not be dialable depending on your carrier and if your area code is currently in an overlay (as of this post it isn't).

-Steven

Please help us make the communities better. Rate helpful posts!

From there numbers that are located in the 206 area, using 555 1212 as an example, they are only able to use the following patterns successfully:

9 206 555 1212

9 1 206 555 1212

I those last two posts.  Test your translation rule with:

test voice translation-rule ruleNumber dialedNumber

So put in your rule number and then the 7 digit number you'd like to have translated.  Using the above examples it would look like this:

test voice translation-rule 7 5551212

If the rule is configured correctly, is should give you 12065551212

If you don't get that result there's a problem with your rule.  If you do, then there's a problem on where the rule is applied.

Your first sentence is not making sense to me. The 7 digit number is not specific. I need to have the system insert 206 for any number that is dialed with 7 digits. Also where would I apply it? Here are my current dial-peers. I am sure they can be condensed, but I am still learning and will get there:

dial-peer voice 9 pots

description PRI-DID return

incoming called-number .

direct-inward-dial

port 0/0/0:23

!

dial-peer voice 10 pots

destination-pattern 9911

port 0/0/0:23

forward-digits 3

!

dial-peer voice 15 pots

destination-pattern 911

port 0/0/0:23

forward-digits 3

!

dial-peer voice 20 pots

description Local Dialing

destination-pattern 9[2-9][0-9][0-9].......

direct-inward-dial

port 0/0/0:23

forward-digits 10

!

dial-peer voice 25 pots

description Long Distance Dialing

destination-pattern 91[2-9][0-9][0-9].......

direct-inward-dial

port 0/0/0:23

forward-digits 11

!

dial-peer voice 30 pots

description International Dialing

destination-pattern 9011T

direct-inward-dial

port 0/0/0:23

!

dial-peer voice 35 pots

preference 1

destination-pattern 9911

port 0/1/0

forward-digits 3

!

dial-peer voice 40 pots

preference 1

destination-pattern 911

port 0/1/0

forward-digits 3

!

dial-peer voice 45 pots

description Long Distance Dialing

preference 1

destination-pattern 91[2-9][0-9][0-9].......

port 0/1/0

forward-digits 11

!

dial-peer voice 50 pots

description International Dialing

preference 1

destination-pattern 9011T

port 0/1/0

!

dial-peer voice 55 pots

description Local Dialing

preference 1

destination-pattern 9[2-9][0-9][0-9].......

port 0/1/0

forward-digits 10

!

dial-peer voice 60 pots

preference 2

destination-pattern 9911

port 0/1/1

forward-digits 3

!

dial-peer voice 65 pots

preference 2

destination-pattern 911

port 0/1/1

forward-digits 3

!

dial-peer voice 70 pots

preference 2

destination-pattern 9[2-9][0-9][0-9].......

port 0/1/1

forward-digits 10

!

dial-peer voice 75 pots

description Long Distance Dialing

preference 2

destination-pattern 91[2-9][0-9][0-9].......

port 0/1/1

forward-digits 11

!

dial-peer voice 80 pots

preference 3

destination-pattern 9911

port 0/1/2

forward-digits 3

!

dial-peer voice 85 pots

preference 3

destination-pattern 911

port 0/1/2

forward-digits 3

!

dial-peer voice 90 pots

preference 3

destination-pattern 9[2-9][0-9][0-9].......

port 0/1/2

forward-digits 10

!

dial-peer voice 95 pots

description Long Distance Dialing

preference 3

destination-pattern 91[2-9][0-9][0-9].......

port 0/1/2

forward-digits 11

!

dial-peer voice 100 pots

preference 4

destination-pattern 9911

port 0/1/3

forward-digits 3

!

dial-peer voice 105 pots

preference 4

destination-pattern 911

port 0/1/3

forward-digits 3

!

dial-peer voice 110 pots

preference 4

destination-pattern 9[2-9][0-9][0-9].......

port 0/1/3

forward-digits 10

!

dial-peer voice 115 pots

description Long Distance Dialing

preference 4

destination-pattern 91[2-9][0-9][0-9].......

port 0/1/3

forward-digits 11

Sorry about the confusing sentence.  I was typing too fast and meant to say:   I just saw those last two posts.

Any way here's what you need to do (expanding on uscitizen's post):

1.  Create your translation rule:

voice translation-rule 7

rule 5 /9\([2-9]......\)/ /415\1/

It doesn't have to be translation-rule 7, you can start with 1.  Also, you'll probably want to start will rule 1 within the rule since these are processed in order.

Lets break it down:

rule 5  --> this is order the rules are matched. Once a match is made, the following rules are ignored.

/9\([2-9]......\)/  --> The info between the / /  variable is what is used to match the called number.  This is saying match any number that starts with 9, the second digit is anything from 2 through 9, and the remaining numbers can be anything, signified by the "."  This is assuming that to dial a 7 digit number a user would dial 9 first for an outside line, then the 7 digits.  Also, notice the \ \ within the config.  This signifies a grouping that will be used in the last part of the config.

/415\1/  --> This last part is what the number will be translated to.  The 415 will be added to any dialed number that matches the first part.  The \1 is addeding that grouping withing the \ \ from the first part. 

2.  Added the translation rule to a profile:

voice translation-profile Seven-to-Ten-Outbound

  translate called 5

The profile is what will be assigned to the dial peer.  So here we're creating a profile called Seven-to-Ten-Outbound which will use translation-rule 5.

3. Apply the profile to your outbound dial peer:

dial-peer voice 10 voip

description Outbound 7 Digit to 10 Digit

translation-profile outgoing Seven-to-Ten-Outbound

preference 1

destination-pattern 9[2-9]......

session target ipv4:10.1.1.1

voice-class codec 1

voice-class h323 1

no vad

Here, when the numbers reach this dial peer for an outgoing call, it will apply that translation rule.

I hope that makes sense.

All,

There is a small bug in my original config.  The translation rule is numbered 7 but the profile tries to translate rule 5. 

voice translation-rule 7  <--- Change this to 5

rule 5 /9\([2-9]......\)/ /415\1/

Doing this will make it work

-Steven

Please help us make the communities better. Rate helpful posts!

Thanks. This REALLY helps me understand it. The only other question I have befor trying it is this:

What happens if a user calls a local numbers with a 425 area code using 10 digits? Since it starts with 4, would that hit a match [2-9] and add the 415 or whatever digits I specify?

James,

If the user dials 9 1 425 then it won't match the translation pattern because the 2nd number dialed does not match the pattern [2-9].

If they dialed 9 425 then it would collect four more digits before it would prepend your area code and then try to find a dial-peer with a 10 digit pattern that matched.

If you have multiple 10 digit area codes and 7 digit numbers that need to be translated into 10 or 11 digit numbers it is probably best overall to instruct your users to dial 9 1 and then the 10 digit number.   You should translate any 7 digit number to  11 digits and leave it at that.

Trying to master variable length dial-plans is a great way to learn but it is probably best not to do it on a production phone system.

-Steven

Please help us make the communities better. Rate helpful posts!

Using this:

voice translation-rule 5

rule 5 /9\([2-9]......\)/ /206\1/

voice translation-profile Seven-to-Ten-Outbound

  translate called 5

I get this:

test voice translation-rule 5 95154065 type any

Matched with rule 1
Original number: 95154065       Translated number: 2065154065
Original number type: any       Translated number type: any
Original number plan: none      Translated number plan: none

test voice translation-rule 5 94257712500 type any

Matched with rule 1

Original number: 94257712500    Translated number: 2064257712500

Original number type: any       Translated number type: any

Original number plan: none      Translated number plan: none

Try chaging the rule to this:

voice translation-rule 5

rule 5 /9\([2-9]......$\)/ /206\1/

Addint the $ signifies the end of the digit string.  This should stop the rule from applying to longer numbers.

I tried it and get this

ex: If I dial 95154065, the call completes as 2065154065

ex: If I dial 94257712500 (local number), the cal completes BUT goes out as 2054257712.

Just to clarify, the call is completing to the desired number, yes?


When you say it goes out as 2054257712, is that what the system is dialing to the pstn, or is that what caller id is showing?