Dial Plans are probably one of the hardest parts of learning about voice. I consider it to be just like subnetting for network enginee…rock stars. There are volumes upon volumes of how to stage and arrange your dial plans to speed call routing and minimize memory usage on voice over IP (VoIP) equipment. However, there are a couple of things that I’ve found over the course of my career in voice that I want to pass along that I’ve never really found written down anywhere. Consider these some of the “street smarts” of VoIP.
– Avoid Placing Extensions in the “9XXX” range. This one seems to be the most popular issue. No matter if you’re using 3-digit or 4-digit extensions, consider anything beginning with a “9” to be off limits. There are actually a couple of reasons for this. First and foremost, “9” is generally used at the PSTN access code (or escape code) for most PBX-style equipment in the world. It’s also used as the escape code for Centrex phone service. If any of the extensions on your Cisco phone system start with a “9”, the system will get a bit confused. The external route patterns on your CUCM/CUCME system all start with “9” and have the “Provide Outside Dial Tone” box checked (at least they should). If you have an extension that is 9640, for instance, CUCM will not play the pitch-changed PSTN dial tone until the number you are dialing explicitly matches a route pattern with the “Provide Outside Dial Tone” check box enabled. In this example, if you are calling a long distance number, when you hit “9”, you won’t hear the higher-pitched tone. You also won’t hear it if you follow with 1, 3, or 1. Not until you dial the 5th digit of your long distance call that eliminates the above 9640 extension will the caller hear the PSTN dial tone. While this doesn’t really affect the operation of the system, it really throws the users for a loop when they don’t hear that dial tone for accessing the PSTN.
The other crucial reason for avoiding extensions that start with “9” is to cut down on the number of misdialed emergency numbers (911 or 999). I’ve talked about emergency numbers before and taking them into account here is just as critical. I’ve even had to change the PSTN escape code to something other than “9” (like 8 or 7) in order to correct this emergency calling issue. In those cases, I have to avoid putting extensions in the 9 range and the new code range to keep my PSTN dial tones and emergency calling behavior straight.
– The 1XXX range is your friend. If you need a number range for your extensions or voice mail ports or other system directory numbers, anything starting with a “1” is a great idea. Why? Well, since the very beginning of phone systems two numbers have always been reserved and not used to start phone numbers. One of these is “0”. Zero has always been used as a signal to the phone company operator, so no number in the North American Numbering Plan (NANP) starts with a zero. The other number is “1”. One is a more curious case. It turns out that the original “candlestick” phones had a bad habit of sending a fast pulse when they went off-hook. In order to prevent a ton of misdialed calls, the system was configured to ignore any numbers that started with a “1”. Again, no numbers in the NANP start with a “1”. We now use One to signal a long distance telephone call, but that is really the only time it’s used. If you use the 1XXX range for all your voice mail ports or park slots or even extensions, you never really have to worry about it colliding with other parts of your dialing plan. If you’re setting up a home CUCME system, like I’m trying to do once I can convince my wife, you can put your extensions in the 1XX range and not need to worry about using a PSTN access code. I’ll probably write a little more about this once my experiment is up and running.
– Create a local 10-digit dial peer. I’ve mentioned this in passing once before, but if you still live in one of those areas that hasn’t switched to 10-digit dialing for all local calls, you should probably program an explicit local dial peer. For example, in central Oklahoma calls are still dialed with 7 digits locally. However, there are destinations that are not long distance (prefixed with a 1) that use 10-digits. If you program a standard 10-digit dial peer (9.[2-9]XX[2-9]XXXXXX), when you dial 7-digit local calls the system must wait for the interdigit timeout to expire before dialing the call. This is because those 7 digits can match two different dial peers (7-digit and 10-digit) and the system doesn’t know which one to use until you let the digit timeout expire, which could be up to 15 seconds. That time is an eternity to your users.
Instead, until the time when your state figures out 10-digit dialing is what all the cool kids are doing, you should do this little work around. Configure your regular 7-digit and long distance dialing codes. Rather than creating a 10-digit route pattern though, just create a route pattern with your 10-digit local area code. In the above example for central Oklahoma (area code 405), that explicit dial peer would be 9.405[2-9]XXXXXX. This way, any 10-digit calls will route immediately. Most of your 7-digit calls should route immediately as well when they match the 9.[2-9]XXXXXX route pattern. The only issue you might have is if your local NANP prefix (the [2-9]XX part) is the same as your area code. Chances are slim in that case, so your local calls won’t wait for the interdigit time to expire. Just be sure to have the 10-digit dial peer for all local calls ready to go on the day you get switched over. Otherwise you are going to have some confused and angry users.
If you are going to be a voice enginee…miracle worker, you are going to spend a lot of time learning about dial plans. Before you know it, things will just be automatic and you’ll be able to churn them out without a second thought. If you take my advice above into account as you’re learning about dial plans, you will have a much easier time when it comes to the strange corner cases you might run into like not hearing a PSTN dial tone or interdigit timeout issues for local calling.