This document demonstrates how to configure an H.323 gateway to route calls out to the public switched telephone network (PSTN) using specific plain old telephone service (POTS) ports based on the calling number of the Cisco IP phone that originated the call. The examples use analog Foreign Exchange Station (FXS) / Foreign Exchange Office (FXO) ports, but the same can be done with analog recEive and transMit (E&M) or digital ports configured with each DS0 in its own ds0-group. Normally, a call sent to a gateway has to use a hunt scheme to route calls out the gateway, with no concern for which port is chosen to route the call. However, in some cases it is desirable for specific ports to be associated with a certain Cisco IP phone number.
Cisco recommends that you have knowledge of basic Voice over IP (VoIP) concepts and configuration.
The information in this document is based on these software and hardware versions:
Cisco CallManager releases 3.x and 4.0
Cisco IP Phones
Analog Gateway (Cisco 3725) that runs Cisco IOS® Software Release 12.3(4)T1
Note: This is also applicable for Analog Gateways (Cisco 2600, 3600, 1700, IAD2400) that run Cisco IOS® Software Release 12.2(11)T or later.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Refer to the Cisco Technical Tips Conventions for more information on document conventions.
There are two categories of Cisco access analog gateways:
Analog station gateways connect an IP telephony network to POTS. Analog station gateways provide FXS ports for connecting to analog telephones, interactive voice response (IVR) systems, fax machines, and voice-mail systems.
Analog trunk gateways connect an IP telephony network to the PSTN central office (CO) or a PBX. They provide FXO ports for PSTN or PBX access and E&M ports for analog trunk connection to a legacy PBX. In order to minimize any answer and disconnect supervision issues, use digital gateways whenever possible. Analog Direct Inward Dial (DID) is also available for PSTN connectivity.
Gateways support H.323, Media Gateway Control Protocol (MGCP), and Session Initiation Protocol (SIP). H.323 and SIP can be deployed on networks in which a call control agent, such as Cisco CallManager, is not present. MGCP is a streamlined protocol and only works on a network in which a Cisco CallManager is present.
This document uses this network setup.
An incoming dial-peer in the gateway accepts an outgoing call from the Cisco IP Phone. Refer to Understanding How Inbound and Outbound Dial Peers are Matched on Cisco IOS Platforms for more on dial-peer matching
dial-peer voice 1 voip translation-profile incoming Phone1 answer-address 8378 !--- A call from Cisco IP Phone 8378 matches this dial-peer. !--- The answer-address matches the ANI of the calling party, which triggers the !--- translation-profile Phone1. This profile then prefixes a "1" onto the !--- destination pattern so that the call can be sent out a specific FXS port. dial-peer voice 2 voip translation-profile incoming Phone2 answer-address 8379 dial-peer voice 3 voip translation-profile incoming Phone3 answer-address 8380
These translation profiles are triggered by an incoming VoIP call leg that matches an inbound dial-peer. These translation profiles prefix a digit onto the called-number digit stream so that a specific port can be used to route the call outbound.
voice translation-profile Phone1 translate called 1 ! voice translation-profile Phone2 translate called 2 ! voice translation-profile Phone3 translate called 3
The translation profiles use translation rules to prefix a distinct digit pattern onto the Dialed Number Information Service (DNIS) sent out by Cisco CallManager. This configuration assumes that the route pattern to dial out to the public network through the analog gateway is "9" in the Cisco CallManager.
This example shows how the translation rules look. These are the new type of translation rules that Cisco IOS Software Release 12.2(11)T and later uses. Refer to Using IOS Translation Rules - Creating Scalable Dial Plans for VoIP Networks for information on translation rules before Cisco IOS Software Release 12.2(11)T.
voice translation-rule 1 rule 1 /^9/ /19/ ! voice translation-rule 2 rule 1 /^9/ /29/ ! voice translation-rule 3 rule 1 /^9/ /39/
This is how the outbound POTS dial-peers appears. The end result is that a call that comes into the router with a certain number is detected and triggers a translation profile. The translation profile then executes a translation rule to prefix a unique digit to the front of the digit stream. This router can then send calls from certain Cisco IP phones out specific POTS ports. This essentially "maps" an IP phone to an analog port.
dial-peer voice 19 pots destination-pattern 19T port 1/0/0 dial-peer voice 29 pots destination-pattern 29T port 1/0/1 ! dial-peer voice 39 pots destination-pattern 39T port 2/0/0
Now when the outbound call is made, the router can choose a dial-peer based on the new translated called number, which has a digit prefixed on the front of the original digit stream. If this translation is not done, then there is no way for the router to select a specific port to send the call out. The default behavior of the router would be to route calls based on a defined hunt group order.
This section provides information you can use to confirm your configuration works properly.
Note: Refer to Important Information on Debug Commands before you issue debug commands.
debug voip ccapi inout —Verifies that the correct dial-peers are matched, both inbound and outbound.
test voice translation-rule 1 95551212—Verifies that the translation-rules prefix the number appropriately when called.
3725#test voice translation-rule 1 95551212 Matched with rule 1 Original number: 95551212 Translated number: 195551212 Original number type: none Translated number type: none Original number plan: none Translated number plan: none
3725#test voice translation-rule 2 95551234 Matched with rule 1 Original number: 95551234 Translated number: 295551234 Original number type: none Translated number type: none Original number plan: none Translated number plan: none
debug translation —Verifies that the translation-rules are called and applied appropriately.
*Aug 31 14:13:50.074: xrule_checking *Aug 31 14:13:50.074: xrule_checking calling 8378, called 95551234 *Aug 31 14:13:50.074: xrule_checking peer_tag 1, direction 1, protocol 1 *Aug 31 14:13:50.074: h323_xrule *Aug 31 14:13:50.074: h323_xrule *Aug 31 14:13:50.074: xrule_checking *Aug 31 14:13:50.074: xrule_checking calling 8378, called 195551234 *Aug 31 14:13:50.074: xrule_checking peer_tag 19, direction 2, protocol 1
There is currently no specific troubleshooting information available for this configuration.
- Understanding Inbound and Outbound Dial Peers Matching on IOS Platforms
- Using IOS Translation Rules - Creating Scalable Dial Plans for VoIP Networks
- Analog Signaling (E & M, DID, FXS, FXO)
- Telephony Signaling Troubleshooting TechNotes
- Cisco IOS H.323 Gateway Configuration for Use with Cisco CallManager
- H.323 Gateway Dial-Peer Configuration for Cisco CallManager Server Redundancy
- Voice Technology Support
- Voice and Unified Communications Product Support
- Troubleshooting Cisco IP Telephony
- Technical Support & Documentation - Cisco Systems
The Cisco Support Community is a forum for you to ask and answer questions, share suggestions, and collaborate with your peers.
Refer to Cisco Technical Tips Conventions for information on conventions used in this document.