FXS Pattern Match Dialing

I am writing this in desperation. I am trying to get analog phones in asterisk (Elastix) to dial using pattern matching. Now maybe I am using the wrong terminology here so forgive me if I am, but this is what I am trying to do.

I need my analog phones on FXS ports to be able to dial immediately upon matching digits.
• 0 – Calls the switchboard operators extension
• 911 – Calls 911
• 1xxx, 2xxx, 3xxx, 4xxx, 5xxx, 6xxx, 7xxx, 9xxx (excluding 9110-9119) calls that extension
• 8 – is the digit for outbound calls
• 8 + [2-9] + 6 digits, calls a local number
• 8 + [1] + 10 digits, calls long distance or toll free numbers
• 8 + 0. International calling. We do not call any international numbers therefore you will not see it in my dial plan below.
• Outbound routes are setup to strip the 8 when sending the call.

All of the SIP phones on my network are Polycom with the exception of some test phones and softphones. When I provision the Polycom phones I deliver the following dial plan to them.

dialplan dialplan.applyToCallListDial=“1” dialplan.digitmap=“0|[9]11|[1-7]xxx|[9]xxx|[*]xx|8,[2-9]xxxxxx|8,[1]xxxxxxxxxx|RR8RxxxxxxxT|RR81RxxxxxxxxxxT|RR8R1xxxxxxxxxxT” />

dialplan dialplan.applyToDirectoryDial=“1” dialplan.digitmap=“0|[9]11|[1-7]xxx|[9]xxx|[*]xx|8,[2-9]xxxxxx|8,[1]xxxxxxxxxx|RR8RxxxxxxxT|RR81RxxxxxxxxxxT|RR8R1xxxxxxxxxxT” />

The reason I had to set this up is because I have a lot of old school users who do not accept change well, if at all. While I personally have no problem dialing a number and pressing # to send, or simply dialing before going off hook, my users are a different story. They expect the new system to function exactly like the old one and when it doesn’t there is pandemonium. The dial plan above makes the Polycom phones act just like those that they are replacing from our aging InterTel AXXESS digital phone system.

Now we bring FXS ports into the mix (analog phones and faxes). I have been using asterisk in some form or another since early 2007. I have had Digium, Sangoma and Xorcom FXS ports, my current system has Xorcom. I have spent several hours searching the Internet trying to find someone who has figured out how to make FXS ports do pattern match dialing like the old digital systems and SIP phones but have not found anything. Am I asking too much to expect an FXS port to be able to send the call immediately up matching a pattern? And what about the # key? Why when dialing on an FXS port does dialing # to send not work? Now some of you might say, “Just set the digit timeout to 2 seconds”!!! This is great for fax machines where you have to dial the number before starting the call, but what do you do with the users who just can’t resist having dial tone on their phone before dialing, but are too slow and hit the timeout before completing the digit entry?

I setup a test environment today using Elastix 2.4 and a Xorcom Astribank with FXS ports. I setup 2 FXS extensions. From the first phone, if I dial the second phone, there is a 5 second timeout before the call is sent. If I dial *98, there is 5 second delay before reaching voicemail. Now this is where it gets fun, if I dial *97 the call is placed immediately upon entry of the digit 7, explain that one to me and then explain why one can’t setup the pattern matching I want? Has anyone figured this out?

I have contacted Elastix support and they said they can’t make it happen, Xorcom support said the same thing. There has to be a way.