cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2875
Views
4
Helpful
10
Replies

Configuring outbound calls to specific fxo ports using trunk groups

rahul14
Level 1
Level 1

I am seeking assistance on how to make calls from a specific extension go out to specific fxo port/s. I have two different trunk groups(POTSGROUP and POTSGROUPNEW)  configured which are applied to the designated voice ports. However based on checks when the extension dials out, only sometimes it goes out to the specific port(voice-port 0/0/3) while a few other times it goes out the other fxo ports. So my question is how do I ensure it only uses the specific fxo port(voice-port 0/0/3) without using the other fxo ports? Should I use cor list configs instead? Also can you explain the voice translation rule below.


voice translation-rule 1
rule 1 /^2\(...$\)/ /1234567/
rule 2 /^3\(...$\)/ /1234567/
!
!
voice translation-profile 4DigitsTOE164
translate called 1

voice-port 0/0/0
trunk-group POTSGROUP
supervisory disconnect dualtone mid-call
timeouts interdigit 7
timeouts call-disconnect 3
timeouts wait-release 3
connection plar opx 7043
description POTS LINE
!
voice-port 0/0/1
trunk-group POTSGROUP
supervisory disconnect dualtone mid-call
timeouts interdigit 7
timeouts call-disconnect 3
timeouts wait-release 3
connection plar opx 7043
description POTS LINE
!
voice-port 0/0/2
trunk-group POTSGROUP
supervisory disconnect dualtone mid-call
timeouts interdigit 7
timeouts call-disconnect 3
timeouts wait-release 3
connection plar opx 7043
description POTS LINE
!
voice-port 0/0/3
trunk-group POTSGROUPNEW
supervisory disconnect dualtone mid-call
timeouts interdigit 7
timeouts call-disconnect 3
timeouts wait-release 3
connection plar opx 7143
description POTS LINE
!
voice-port 0/1/0
trunk-group POTSGROUP
supervisory disconnect dualtone mid-call
timeouts interdigit 7
timeouts call-disconnect 3
timeouts wait-release 3
connection plar opx 7043
description POTS LINE
!
voice-port 0/1/1
trunk-group POTSGROUP
supervisory disconnect dualtone mid-call
timeouts interdigit 7
timeouts call-disconnect 3
timeouts wait-release 3
connection plar opx 7043
description POTS LINE
!
voice-port 0/1/2
trunk-group POTSGROUP
supervisory disconnect dualtone mid-call
timeouts interdigit 7
timeouts call-disconnect 3
timeouts wait-release 3
connection plar opx 7043
description POTS LINE
!
voice-port 0/1/3
trunk-group POTSGROUP
supervisory disconnect dualtone mid-call
timeouts interdigit 7
timeouts call-disconnect 3
timeouts wait-release 3
connection plar opx 7043
description POTS LINE
!
!
dial-peer voice 3 pots
trunkgroup POTSGROUP
description Local
destination-pattern 9[2-9]......
forward-digits 7
no sip-register
!

dial-peer voice 6 pots
trunkgroup POTSGROUPNEW
description Local
destination-pattern 9[2-9]......
forward-digits 7
no sip-register


dial-peer voice 210 voip
description Outgoing DialPeer1 To Primary CCM
preference 1
destination-pattern 7043
session target ipv4:10.50.1.12
incoming called-number 9.T
voice-class codec 100
voice-class h323 100
dtmf-relay h245-alphanumeric
ip qos dscp cs3 signaling
no vad
!
dial-peer voice 211 voip
description Outgoing DialPeer2 To Secondary CCM
preference 2
destination-pattern 7043
session target ipv4:10.50.1.11
incoming called-number 9.T
voice-class codec 100
voice-class h323 100
dtmf-relay h245-alphanumeric
ip qos dscp cs3 signaling
no vad


dial-peer voice 212 voip
description Outgoing New DialPeer1 To Primary CCM
preference 1
destination-pattern 7143
session target ipv4:10.50.1.12
incoming called-number 9.T
voice-class codec 100
voice-class h323 100
dtmf-relay h245-alphanumeric
ip qos dscp cs3 signaling
no vad
!
dial-peer voice 213 voip
description Outgoing New DialPeer2 To Secondary CCM
preference 2
destination-pattern 7143
session target ipv4:10.50.1.11
incoming called-number 9.T
voice-class codec 100
voice-class h323 100
dtmf-relay h245-alphanumeric
ip qos dscp cs3 signaling
no vad
!

trunk group POTSGROUP
voice-class cause-code 1
hunt-scheme round-robin
!
!

trunk group POTSGROUPNEW
voice-class cause-code 1
hunt-scheme round-robin
!

10 Replies 10

Sam Smiley
Level 3
Level 3

You will configure this using dial peers and translation rules, you will find good walk through here:

http://www.cisco.com/c/en/us/support/docs/voice/call-routing-dial-plans/41887-specific-fxs-call.html

I outlined this in a previous post, the below config outlines how to send a FXS analog device out a specific FXO port. In the example below extension 1952 assigned to FXS 0/2/1 is translated out FXO 0/0/1. This same config would work for a VoIP endpoint with extension 1952 or by using wildcards you could do extension blocks. You would also want to change the port assigned to dial peer 32 to the trunk group you want to send the call out rather than an individual port.

voice-port 0/2/1 <------- FXS port with analog device
 station-id number 1952
 caller-id enable

dial-peer voice 21 pots <---------Inbound dial peer for FXS
 translation-profile incoming anl1952
 answer-address 1952
 forward-digits all

voice translation-profile anl1952 <--------Translation profile specified in dial peer 21
 translate called 52

voice translation-rule 52 <--------Translation rule referenced in profile
 rule 1 // /32/

dial-peer voice 32 pots <-------Dial peer redirecting FXS port to FXO port
destination-pattern 32T
 port 0/0/1

The translation rules you specify do the following:

rule 1 /^2\(...$\)/ /1234567/ <----- translates any 4 digit number beginning with 2 to 1234567
rule 2 /^3\(...$\)/ /1234567/ <----- translates any 4 digit number beginning with 3 to 1234567

You can see translation rules explained in the following link:

http://www.cisco.com/c/en/us/support/docs/voice/call-routing-dial-plans/61083-voice-transla-rules.html

Regards,
Sam

Rajan
VIP Alumni
VIP Alumni

Hi Rahul,

I could see two dial-peers for the pattern 9[2-9]...... as below:

dial-peer voice 3 pots
trunkgroup POTSGROUP
description Local
destination-pattern 9[2-9]......
forward-digits 7
no sip-register
!

dial-peer voice 6 pots
trunkgroup POTSGROUPNEW
description Local
destination-pattern 9[2-9]......
forward-digits 7
no sip-register

So if you dial 9 followed by 7 digits, it will use both the trunk groups. If you want to use POTSGROUPNEW (voice-port 0/0/3) first always and when its occupied then go to the other fxo ports, then you could use the preference commands as follows:

dial-peer voice 3 pots
trunkgroup POTSGROUP
description Local
destination-pattern 9[2-9]......
forward-digits 7
no sip-register

Preference 2
!

dial-peer voice 6 pots
trunkgroup POTSGROUPNEW
description Local
destination-pattern 9[2-9]......
forward-digits 7
no sip-register

Preference 1

But if you do not want to use the other ports then you can shut down the dial-peer 3.

reg the voice translation rule it converts 2XXX and 3XXX numbers dialed to 1234567. But i do not see that to be used anywhere in the provided config. It will be used only when you apply that translation profile somewhere.

HTH

Rajan

Pls rate all useful posts

Hi Rajan,

Thanks for responding and the info. However I do not want to dial out based on preference but based on the device pool the phones are in. So the original IP extensions would continue to use ports with POTSGROUP, while the new IP extensions I add would go out the specific port(voice-port 0/0/3 via POTSGROUPNEW). Route patterns, route list, route group, CSS, partition, device pool etc are configured in CUCM. Please note it currently dials out as expected for the most part however I notice that after continuously trying to dial with the new extension it eventually goes to the other voice ports which should not happen.

If you are doing this at CUCM, then its pretty simple to achieve.

Make sure that the new phones CSS have access only to the partition assigned to Route pattern 2 and can no way access the other route pattern (RP1).

Route pattern 1 -> RL --> RG --> contains all other voice ports

Route pattern 2 -> RL --> RG --> only contain voice-port 0/0/3

Thanks 

Rajan

Hi Rajan,

Thanks for this. Can you however state how you configure the the route group member to only include voice-port 0/0/3. I assume this is done in CUCM.

It depends on whether you are using MGCP/H323 to integrate the gateway with CUCM. If MGCP then you need to do it in CUCM, else on the gateway

Hi Rajan..I am using H323, can you say how this would be done with an example..I am still having a challenge segmenting outbound calls based on extension/device pool.

Hi Rahul,

Lets say all your new extensions starts with 2XXX and your old extensions with 3XXX, then you could do the following:

Match inbound dial-peers based on the calling number (either new or old extensions) and translate the called number to include a prefix like 8 for calls from new extensions and 7 for calls from old extensions in order to match the corresponding outbound dial-peers and route the calls via required ports.

voice translation-rule 200
rule 1 /^9/ /89/
!
voice translation-profile tomatch200
translate called 200

Dial-peer 200 voip
incoming called-number 2...
Translation-profile outgoing tomatch200

voice translation-rule 300
rule 1 /^9/ /79/
!
voice translation-profile tomatch300
translate called 300

Dial-peer 300 voip
incoming called-number 3...
Translation-profile outgoing tomatch300

Then edit your existing dial-peers accordingly as below:

dial-peer voice 3 pots
trunkgroup POTSGROUP
description Local
destination-pattern 79[2-9]......
forward-digits 7
no sip-register
!

dial-peer voice 6 pots
trunkgroup POTSGROUPNEW
description Local
destination-pattern 89[2-9]......
forward-digits 7
no sip-register

HTH

Rajan

Pls rate all useful posts

Ok thanks Rajan. I will try that...So the commands i had to the outgoing primary and secondary CUCMs no longer needed?...eg

destination-pattern 7143
session target ipv4:10.50.1.12
incoming called-number 9.T

Let them be there. I guess its for routing the calls to CUCM extensions. So no need to remove those DPs.

The example dial-peers I gave is just for inbound dial-peer match and translate the called numbers to match the corresponding outbound dial-peers.