VoIP Mailing List Archives
Mailing list archives for the VoIP community |
|
View previous topic :: View next topic |
Author |
Message |
dougmig33 at yahoo.com Guest
|
Posted: Mon Jun 23, 2008 11:54 am Post subject: [asterisk-users] Building a Complex IVR |
|
|
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 |
|
Back to top |
|
|
stotaro at totarotechn... Guest
|
Posted: Mon Jun 23, 2008 12:02 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
On Mon, Jun 23, 2008 at 12:54 PM, Douglas Garstang <dougmig33 at yahoo.com> wrote:
Quote: | 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 |
|
Back to top |
|
|
dougmig33 at yahoo.com Guest
|
Posted: Mon Jun 23, 2008 12:31 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
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:
Quote: | 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 |
|
Back to top |
|
|
stotaro at totarotechn... Guest
|
Posted: Mon Jun 23, 2008 12:52 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
Quote: | 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:
Quote: | 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:
Quote: | 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
|
|
|
Back to top |
|
|
asterisk.org at sedwar... Guest
|
Posted: Mon Jun 23, 2008 1:05 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
Quote: | On Mon, Jun 23, 2008 at 12:54 PM, Douglas Garstang <dougmig33 at yahoo.com>
wrote:
|
Quote: | Quote: | 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
|
|
Quote: | From: Steve Totaro <stotaro at totarotechnologies.com>
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.
|
On Mon, 23 Jun 2008, Douglas Garstang wrote:
Quote: | 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.
|
Then don't do it (fastagi()).
Even a POC computer can do hundreds of "normal" AGIs per second.
If your load isn't massive, agi() should be fine. If AGIs truly (and
demonstrably) are the bottleneck, almost all of your work should be
reusable as FastAGI. If your load is expected to be massive, C would be a
better choice for your FastAGI server anyway. Or, throw a lot more
hardware at the problem.
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 3
Thanks in advance,
------------------------------------------------------------------------
Steve Edwards sedwards at sedwards.com Voice: +1-760-468-3867 PST
Newline Fax: +1-760-731-3000 |
|
Back to top |
|
|
dougmig33 at yahoo.com Guest
|
Posted: Mon Jun 23, 2008 1:18 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
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
Quote: | 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:
Quote: | 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:
Quote: | 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 |
|
Back to top |
|
|
dougmig33 at yahoo.com Guest
|
Posted: Mon Jun 23, 2008 1:20 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
Quote: | I would build it this way:
|
Quote: |
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 3
|
Can 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 |
|
Back to top |
|
|
asterisk.org at sedwar... Guest
|
Posted: Mon Jun 23, 2008 4:04 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
Quote: | Quote: | 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 3
|
|
On Mon, 23 Jun 2008, Douglas Garstang wrote:
Quote: | Can FastAGI call FastAGI?
|
I guess it would be possible using the EXEC agi command to call fastagi(),
but I don't see any advantage.
Quote: | The application needs to contact another FastAGI server written in Java
to lookup various billing information.
|
I'm not a big fan of Java. I've never used it, I only know it by
reputation If the application is just "select and return the values"
the choice of language could be irrelevant. If the application fiddles
with the values or scans through rows or implements a bunch of logic, I'd
vote for C.
C seems obvious to me for daemons like a FastAGI server.
I would focus on clarity and maintainability and then throw more efficient
languages or more hardware at the observed performance problem.
Thanks in advance,
------------------------------------------------------------------------
Steve Edwards sedwards at sedwards.com Voice: +1-760-468-3867 PST
Newline Fax: +1-760-731-3000 |
|
Back to top |
|
|
abalashov at evaristes... Guest
|
Posted: Mon Jun 23, 2008 6:02 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
Douglas Garstang wrote:
Quote: | 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 |
|
Back to top |
|
|
abalashov at evaristes... Guest
|
Posted: Mon Jun 23, 2008 6:03 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
Douglas Garstang wrote:
Quote: | 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 |
|
Back to top |
|
|
dougmig33 at yahoo.com Guest
|
Posted: Wed Jun 25, 2008 6:17 pm Post subject: [asterisk-users] Building a Complex IVR |
|
|
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:
Quote: | 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 |
|
Back to top |
|
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|