I'm about to build a complex IVR with Asterisk. Having done it a few times with the dial plan, I know it's going to be pretty ugly. What are my other options? I guess I could do it in AGI/FastAGI. What about VxML (about which I know almost nothing...)? Using Asterisk 1.2 Thanks, Doug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20080623/b33554b3/attachment.htm
On Mon, Jun 23, 2008 at 12:54 PM, Douglas Garstang <dougmig33 at yahoo.com> wrote:> I'm about to build a complex IVR with Asterisk. > > Having done it a few times with the dial plan, I know it's going to be > pretty ugly. What are my other options? I guess I could do it in > AGI/FastAGI. What about VxML (about which I know almost nothing...)? > > Using Asterisk 1.2 > > Thanks, > Doug. >FastAGI is a good bet. You can patch it to jump N+101 so you can have failover in case the box hosting the AGI is unreachable, it will jump, instead of the default of just failing and halting. It also offloads the processing to a different box. Thanks, Steve Totaro
Right, except now I have to go write a multi-threaded, redundant FastAGI server in python (euww, hate java). That replaces the effort of doing it in the dial-plan with the effort required for a more complex application + the effort required to make it redundant. Asterisk 1.2 also does not recover from a failure to connect to a FastAGI server. When it fails to connect, the current call just bombs out. No recovery possible. Doug. ----- Original Message ---- From: Steve Totaro <stotaro at totarotechnologies.com> To: Asterisk Users Mailing List - Non-Commercial Discussion <asterisk-users at lists.digium.com> Sent: Monday, June 23, 2008 10:02:37 AM Subject: Re: [asterisk-users] Building a Complex IVR On Mon, Jun 23, 2008 at 12:54 PM, Douglas Garstang <dougmig33 at yahoo.com> wrote:> I'm about to build a complex IVR with Asterisk. > > Having done it a few times with the dial plan, I know it's going to be > pretty ugly. What are my other options? I guess I could do it in > AGI/FastAGI. What about VxML (about which I know almost nothing...)? > > Using Asterisk 1.2 > > Thanks, > Doug. >FastAGI is a good bet. You can patch it to jump N+101 so you can have failover in case the box hosting the AGI is unreachable, it will jump, instead of the default of just failing and halting. It also offloads the processing to a different box. Thanks, Steve Totaro _______________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- AstriCon 2008 - September 22 - 25 Phoenix, Arizona Register Now: http://www.astricon.net asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20080623/73801b8b/attachment.htm
Oh, if only we where installing Asterisk from source. ----- Original Message ---- From: Steve Totaro <stotaro at totarotechnologies.com> To: Asterisk Users Mailing List - Non-Commercial Discussion <asterisk-users at lists.digium.com> Sent: Monday, June 23, 2008 10:52:22 AM Subject: Re: [asterisk-users] Building a Complex IVR>Asterisk 1.2 also does not recover > from a failure to connect to a FastAGI server. When it fails to connect, the > current call just bombs out. No recovery possible."Wrong. If you re-read my initial post, there is a patch for this. http://bugs.digium.com/view.php?id=4029 If you are going to complain about recommended solutions, then why ask in the first place? Just use FreePBX and copy over the pertinent parts of your conf files....... Thanks, Steve T On Mon, Jun 23, 2008 at 1:31 PM, Douglas Garstang <dougmig33 at yahoo.com> wrote:> Right, except now I have to go write a multi-threaded, redundant FastAGI > server in python (euww, hate java). That replaces the effort of doing it in > the dial-plan with the effort required for a more complex application + the > effort required to make it redundant. Asterisk 1.2 also does not recover > from a failure to connect to a FastAGI server. When it fails to connect, the > current call just bombs out. No recovery possible. > > Doug. > > ----- Original Message ---- > From: Steve Totaro <stotaro at totarotechnologies.com> > To: Asterisk Users Mailing List - Non-Commercial Discussion > <asterisk-users at lists.digium.com> > Sent: Monday, June 23, 2008 10:02:37 AM > Subject: Re: [asterisk-users] Building a Complex IVR > > On Mon, Jun 23, 2008 at 12:54 PM, Douglas Garstang <dougmig33 at yahoo.com> > wrote: >> I'm about to build a complex IVR with Asterisk. >> >> Having done it a few times with the dial plan, I know it's going to be >> pretty ugly. What are my other options? I guess I could do it in >> AGI/FastAGI. What about VxML (about which I know almost nothing...)? >> >> Using Asterisk 1.2 >> >> Thanks, >> Doug. >> > > FastAGI is a good bet. You can patch it to jump N+101 so you can have > failover in case the box hosting the AGI is unreachable, it will jump, > instead of the default of just failing and halting. > > It also offloads the processing to a different box. > > Thanks, > Steve Totaro > > _______________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > AstriCon 2008 - September 22 - 25 Phoenix, Arizona > Register Now: http://www.astricon.net > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users > > > _______________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > AstriCon 2008 - September 22 - 25 Phoenix, Arizona > Register Now: http://www.astricon.net > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users >_______________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- AstriCon 2008 - September 22 - 25 Phoenix, Arizona Register Now: http://www.astricon.net asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20080623/c69717e3/attachment.htm
>I would build it this way:> >1) Design the dialplan logically so it is understandable and maintainable. > >2) Code up the AGIs in whatever language you are comfortable. I would use >C, but that's what I'm most comfortable with. > >3) Confirm everything works like you think it should. > >4) Measure to identify where the real bottlenecks are. > >5) Attack the top 1 or 2 bottlenecks. The solution may be: > >a) Recode an AGI in C. > >b) Re-implement an AGI as fastagi() on the same server. > >c) Re-implement an AGI as fastagi() on another server. > >6) Go to step 3Can FastAGI call FastAGI? The application needs to contact another FastAGI server written in Java to lookup various billing information. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20080623/1367a5e9/attachment.htm
Douglas Garstang wrote:> Right, except now I have to go write a multi-threaded, redundant FastAGI > server in python (euww, hate java). That replaces the effort of doing it > in the dial-plan with the effort required for a more complex application > + the effort required to make it redundant. Asterisk 1.2 also does not > recover from a failure to connect to a FastAGI server. When it fails to > connect, the current call just bombs out. No recovery possible.You can do a FastAGI service in Perl, too. -- Alex Balashov Evariste Systems Web : http://www.evaristesys.com/ Tel : (+1) (678) 954-0670 Direct : (+1) (678) 954-0671 Mobile : (+1) (706) 338-8599
Douglas Garstang wrote:> Can FastAGI call FastAGI? The application needs to contact another > FastAGI server written in Java to lookup various billing information.AGI can call any dialplan application, including another call to AGI() (with a URL that ends up going to FastAGI). -- Alex Balashov Evariste Systems Web : http://www.evaristesys.com/ Tel : (+1) (678) 954-0670 Direct : (+1) (678) 954-0671 Mobile : (+1) (706) 338-8599
On Mon, 2008-06-23 at 09:54 -0700, Douglas Garstang wrote:> I'm about to build a complex IVR with Asterisk. > > Having done it a few times with the dial plan, I know it's going to be > pretty ugly. What are my other options? I guess I could do it in > AGI/FastAGI. What about VxML (about which I know almost nothing...)? > > Using Asterisk 1.2 > > Thanks, > Doug. >Sorry, I tried to peak thru all the stuff in this thread, but I may have missed it; has anyone suggested the externalIVR app? If not, it might be worth consideration...? murf>-- Steve Murphy Software Developer Digium -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/x-pkcs7-signature Size: 3227 bytes Desc: not available Url : http://lists.digium.com/pipermail/asterisk-users/attachments/20080624/58187f18/attachment.bin
I don't think anyone did, and I was hoping someone would. :) ----- Original Message ---- From: Steve Murphy <murf at digium.com> To: Asterisk Users Mailing List - Non-Commercial Discussion <asterisk-users at lists.digium.com> Sent: Tuesday, June 24, 2008 3:57:48 PM Subject: Re: [asterisk-users] Building a Complex IVR On Mon, 2008-06-23 at 09:54 -0700, Douglas Garstang wrote:> I'm about to build a complex IVR with Asterisk. > > Having done it a few times with the dial plan, I know it's going to be > pretty ugly. What are my other options? I guess I could do it in > AGI/FastAGI. What about VxML (about which I know almost nothing...)? > > Using Asterisk 1.2 > > Thanks, > Doug. >Sorry, I tried to peak thru all the stuff in this thread, but I may have missed it; has anyone suggested the externalIVR app? If not, it might be worth consideration...? murf>-- Steve Murphy Software Developer Digium -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20080625/38e67b10/attachment.htm