Different tone signal, when dial 9

How can I get a simple PBX situation when I want to make an outbound calls: when I pickup the handset there is signal tone and I can make local calls (immediate=no in zapata.conf), but when I dial 9, I can hear different signal tone (at this time I can make calls outside PBX) and I can dial whatever number I want. I can use ignorepat => 9 in extensions.conf but the signal tone is the same, and I need different!
Thanks for help!


What type of handsets are you using? Some SIP Phones support this out of the box, or at least give you a bouncing dialtone after 9 is pressed to signal an outside line, when properly configured

I’m afraid I don’t know of any way to actually change the dialtone after 9 is pressed in a live dialplan environment using IAX/Zap devices.


I know that Cisco 7960’s support the different tone. For pressing 9. I’m purdy sure since most sip phones don’t send the call out till all the digits are entered - you have to find a phone that supports it.

GrandStream supports a feature called “early dial” with the caveat “use “Yes” only if proxy supports 484 response”. Not sure if Asterisk supports 484 response.

But even without this, you can program Asterisk to fake a ring tone after “9”. You can make TIMEOUT(DIGIT) sufficiently short (so the habitual pause after pressing 9 kicks in), create a extension 9 to invoke WaitExten in a new context, and use m option in WaitExten in that context. Something like (untested)


exten => 9,1,Goto(out,s,1)

exten => s,1,WaitExten(m(myclass))
exten => _Z.,1,Dial(ZAP/g1/${EXTEN})[/code]

Or consider PlayTones.

The problem with PlayTones is that it doesn’t stop playing signal tone when I dial a digit.
But I solve my problem using DISA() function!
Thanks anyway :wink: