I have an Asterisk system setup for our small business, and its working well. I posted to the list about a week or so ago, regarding having it handle direct extension dialing, and unfortunately I'm not any closer to solving this issue, so I was hoping someone might have a working example of how to set this up they could point me towards. Basically I have everything EXCEPT direct extension dialing working. What I mean by this is that a caller gets an ACD menu when they come into the phone system, (1 for sales, 2 for support, 3 for customer service, and 8 for directory of employees). I have setup extensions with 4 digit numbers, all beginning with 6 (ie. 6001, 6002, etc.). I was hoping that I could capture the first digit entered as a 6 which doesn't correspond with a menu option, and then get the next 3 digits and dial the appropriate extension. Unfortunately that's not working because the system isn't quick enough to process and deal with additional digit entry without dropping a digit or two. I was told to use wildcard maskings like this _XXXX for the extension, which I attempted over the weekend. Unfortunately the second I hit a digit that wasn't in the menu options, it dropped the call. What I have that is working at the moment is this: ; Calls during business hours exten => s,1,Set(TIMEOUT(digit)=1) exten => s,n,Wait(1) exten => s,n,Background(01-welcome_mod) exten => s,n,WaitExten(3) exten => s,n,Goto(ts_operator,s,1) ; User pressed 1 - sales exten => 1,1,Wait(1) exten => 1,n,Goto(ts_sales,s,1) etc What I need to know is what to change this to (exactly) so that it will allow up to 4 digits to be entered, but on the first one being entered, it is validated against the phone menu options. Does anyone have any example dialplans that show how to do an ACD menu, with direct extension dialing supported as well they could point me towards? Myles -- ======================Myles Wakeham Director of Engineering Tech Solutions USA, Inc. Scottsdale, Arizona USA http://www.techsolusa.com Phone +1-480-451-7440
You've tried this line - - exten => s,_6XXX,Dial(SIP/${EXTEN:1}) ? -----Original Message----- From: asterisk-users-bounces at lists.digium.com [mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Myles Wakeham Sent: Monday, December 21, 2009 12:04 PM To: asterisk-users at lists.digium.com Subject: [asterisk-users] Looking for some example dialplans I have an Asterisk system setup for our small business, and its working well. I posted to the list about a week or so ago, regarding having it handle direct extension dialing, and unfortunately I'm not any closer to solving this issue, so I was hoping someone might have a working example of how to set this up they could point me towards. Basically I have everything EXCEPT direct extension dialing working. What I mean by this is that a caller gets an ACD menu when they come into the phone system, (1 for sales, 2 for support, 3 for customer service, and 8 for directory of employees). I have setup extensions with 4 digit numbers, all beginning with 6 (ie. 6001, 6002, etc.). I was hoping that I could capture the first digit entered as a 6 which doesn't correspond with a menu option, and then get the next 3 digits and dial the appropriate extension. Unfortunately that's not working because the system isn't quick enough to process and deal with additional digit entry without dropping a digit or two. I was told to use wildcard maskings like this _XXXX for the extension, which I attempted over the weekend. Unfortunately the second I hit a digit that wasn't in the menu options, it dropped the call. What I have that is working at the moment is this: ; Calls during business hours exten => s,1,Set(TIMEOUT(digit)=1) exten => s,n,Wait(1) exten => s,n,Background(01-welcome_mod) exten => s,n,WaitExten(3) exten => s,n,Goto(ts_operator,s,1) ; User pressed 1 - sales exten => 1,1,Wait(1) exten => 1,n,Goto(ts_sales,s,1) etc What I need to know is what to change this to (exactly) so that it will allow up to 4 digits to be entered, but on the first one being entered, it is validated against the phone menu options. Does anyone have any example dialplans that show how to do an ACD menu, with direct extension dialing supported as well they could point me towards? Myles -- ======================Myles Wakeham Director of Engineering Tech Solutions USA, Inc. Scottsdale, Arizona USA http://www.techsolusa.com Phone +1-480-451-7440 _______________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
On Mon, 21 Dec 2009, Myles Wakeham wrote:> I was told to use wildcard maskings like this _XXXX for the extension, > which I attempted over the weekend. Unfortunately the second I hit a > digit that wasn't in the menu options, it dropped the call.... because you don't have any code to handle the invalid entry. Read up on the "i" extension. See http://www.voip-info.org/wiki/view/Asterisk+standard+extensions -- Thanks in advance, ------------------------------------------------------------------------- Steve Edwards sedwards at sedwards.com Voice: +1-760-468-3867 PST Newline Fax: +1-760-731-3000
Peter Kristolaitis
2009-Dec-21 20:52 UTC
[asterisk-users] Looking for some example dialplans
You may want to make your WaitExten() wait for a bit longer than 3 seconds. ;) Doesn't give the user much time to listen to the greeting AND enter a 4-digit extension.... I have something like this in my dialplan and it works fine (sanitized, and some irrelevant parts snipped out). I have options 1, 2, 3, and 4 in the IVR, and all my user extensions are 2XX. Note that although I have my user extensions split out into a separate context, this isn't necessary for it to work. [COMPANY_ivr_main] include => COMPANY_internal ; Invalid extension handler; replay the options, skipping the greeting. exten => i,1,Wait(0.5) exten => i,n,Playback(pbx-invalid) exten => i,n,Wait(0.5) exten => i,n,Goto(ivr_mainmenu,restart) ; The root of the IVR menu exten => ivr_mainmenu,1,Answer() exten => ivr_mainmenu,n,Wait(0.5) exten => ivr_mainmenu,n,Background(COMPANY/thank-you-for-calling) exten => ivr_mainmenu,n(restart),Background(COMPANY/if-you-know-extension) exten => ivr_mainmenu,n,Background(COMPANY/otherwise-listen-to-options) exten => ivr_mainmenu,n,Background(COMPANY/for-product-support) exten => ivr_mainmenu,n,Background(COMPANY/for-sales) exten => ivr_mainmenu,n,Background(COMPANY/to-access-conference-bridge) exten => ivr_mainmenu,n,Background(COMPANY/to-access-company-directory) exten => ivr_mainmenu,n,Background(COMPANY/to-repeat-options) exten => ivr_mainmenu,n,WaitExten(60) exten => ivr_mainmenu,n,Hangup() exten => 1,1,FollowMe(COMPANY_productsupport) exten => 1,n,VoiceMail(100 at COMPANY,u) exten => 1,n,Wait(1) exten => 1,n,Hangup() exten => 2,1,FollowMe(COMPANY_sales) exten => 2,n,VoiceMail(101 at COMPANY,u) exten => 2,n,Wait(1) exten => 2,n,Hangup() exten => 3,1,Goto(COMPANY_conference,conf_mainmenu,1) exten => 4,1,Goto(COMPANY_directory,dir_mainmenu,1) exten => *,1,Goto(ivr_mainmenu,1) ; Internal extensions [COMPANY_internal] exten => _2XX,1,FollowMe(COMPANY_${EXTEN}) exten => _2XX,n,VoiceMail(${EXTEN}@COMPANY,u) exten => _2XX,n,Wait(1) exten => _2XX,n,Hangup() Myles Wakeham wrote:> I have an Asterisk system setup for our small business, and its working > well. I posted to the list about a week or so ago, regarding having it > handle direct extension dialing, and unfortunately I'm not any closer to > solving this issue, so I was hoping someone might have a working example > of how to set this up they could point me towards. > > Basically I have everything EXCEPT direct extension dialing working. > What I mean by this is that a caller gets an ACD menu when they come > into the phone system, (1 for sales, 2 for support, 3 for customer > service, and 8 for directory of employees). > > I have setup extensions with 4 digit numbers, all beginning with 6 (ie. > 6001, 6002, etc.). I was hoping that I could capture the first digit > entered as a 6 which doesn't correspond with a menu option, and then get > the next 3 digits and dial the appropriate extension. Unfortunately > that's not working because the system isn't quick enough to process and > deal with additional digit entry without dropping a digit or two. > > I was told to use wildcard maskings like this _XXXX for the extension, > which I attempted over the weekend. Unfortunately the second I hit a > digit that wasn't in the menu options, it dropped the call. > > What I have that is working at the moment is this: > > ; Calls during business hours > exten => s,1,Set(TIMEOUT(digit)=1) > exten => s,n,Wait(1) > exten => s,n,Background(01-welcome_mod) > exten => s,n,WaitExten(3) > exten => s,n,Goto(ts_operator,s,1) > > ; User pressed 1 - sales > exten => 1,1,Wait(1) > exten => 1,n,Goto(ts_sales,s,1) > > etc > > What I need to know is what to change this to (exactly) so that it will > allow up to 4 digits to be entered, but on the first one being entered, > it is validated against the phone menu options. > > Does anyone have any example dialplans that show how to do an ACD menu, > with direct extension dialing supported as well they could point me towards? > > Myles >