Feature code overlap with extensions, how to work around it?

Hi. Trying to transfer a call directly to voicemail for extension 720, I’d dial *720 (Snom 360/370 or Polycom 330 phones)

Unfortunately this is interpreted by asterisk as *72, call forward unconditional to “0”

I could change my call forwarding to something other than *72 and reprogram every phone in the office, however I’d rather not, and instead fix the underlying problem (if possible).

I would prefer to have *7xx recognized before *72(any random length or nothing). Is that possible? If so, where?

If *72 could only work with 3 digit extensions, *72xxx wouldn’t interfere with a direct transfer to voicemail, *7xx.

Another example might be *74 “Call Forward All Prompting Deactivate”, while
*740 is “Call Forward Toggle”. Is it just random luck that *740 isn’t caught as *74 or is there some sort of ordering at work? I can’t find any discussion of this.

Thanks,
Sean

You did not mention what type of phones you are using, but this problem is typically caused by the digit mapping of your phone. I deploy a lot of Polycom and Cisco/Linksys and they both have the ability to configure patterns that are matched when dialing digits on the handset.

Oh yeah they are snom 360/370 I should have mentioned that.

So the phone’s dialplan… For some reason I totally discounted that idea earlier not sure why just stupid maybe.

I will check into it thanks.

Allow me to revise that… I discounted it because my phone doesn’t have a dial plan. I have to hit the checkmark to dial a number. What can the phone’s dialplan do to prevent *720 from being interpreted by asterisk as *72 ext 0?

deactivate * codes (star codes) on your phone.

Sorry I don’t know what you mean by that. Perhaps you could explain. I don’t believe the phone is consuming these star codes for itself and I’m not sure how that would relate to the order in which feature codes are parsed by the server.

Thanks,
Sean

I recommend that you change the transfer to voicemail feature code from * to something else, such as *86. You can make this change using the General Settings module.

Note that I’ve included this recommendation in the FreePBX documentation…

http://www.freepbx.org/support/documentation/installation/first-steps-after-installation

Thanks for the suggestion. I hadn’t found that configuration option before and wasn’t sure how it was implemented.

I used to hand-code misc destinations for each {extension}+100, so for example direct voicemail for ext 720 would be ext 820. It wasn’t ideal but it worked. But then I found the star code prefix and thought that was far better since my staff only had to remember to prepend a star. Requiring them to memorize some random code like *86 just seems so completely unnecessary. I would rather solve the underlying problem with the feature codes.

I’m not at all afraid to dig into source and get my hands dirty to figure this out. I find it really strange that with all the precise dial plan type stuff we have everywhere else that the feature codes could be treated in such a random manner. I’m still hoping someone will have an answer to my question: Is it just random luck [how codes are parsed out] or is there some sort of ordering at work?