IAX2 Java library (was Re: [Asterisk-Users] New IAX software
phone (for WIndows platform))
Alastair Maw
asterisk at almaw.com
Mon Nov 3 11:02:14 MST 2003
On 03/11/03 16:35, Jeremy McNamara wrote:
>> I'm implementing a Java-based IVR server (and yes, I know Asterisk does
>> IVR, and no, it's not flexible enough to do what I want and no, it
>> doesn't integrate well with the Java systems we have, etc. hence my
>> doing this).
>
> Are you mad? What is not flexable enough for you? Java knows what STDIN
> and STDOUT is, right? What more do you need?
Not wanting to start a flamewar, but...
- I can't possibly fork a whole JVM process for each caller. It's much
too inefficient. This needs to support hundreds of simultaneous
calls, and the GNU Java compiler just isn't good enough for our
needs. I guess I could write an AGI wrapper script which connected
to the Java server over a TCP connection or something and piped the
stdin/out down the line to it.
- We'd like to use Java because:
- Need to do RMI to existing systems. Can't be bothered with all
the CORBA nonsense.
- It's more maintainable within our organization.
- We have lots of existing components to support.
- It does all the interoperability stuff we need very nicely,
so we save time once the system is built (XML, etc.).
- We like it. :)
- I need access to the raw audio streams in realtime for various
reasons (need to do DSP stuff for some clients, etc). Can I get this
easily with AGI? Along with this, I need to be able to play audio
from a URL. I don't want to have to download the whole file from the
URL in order to play it - it wants to be streamed. Is this possible
with AGI? The docs aren't very good for AGI, so I don't really
know...
- I need to be able to generate large amounts of audio in realtime,
conference people together but then only play an audio file to one
person within the conference, etc. I don't think AGI is flexible
enough to do this.
- I'd like to be able to move from Asterisk to something else if I
need to. This is why originally I was doing things using SIP/RTP.
- The documentation for AGI is very poor. I know it is for IAX, too,
but I can see a Java IAX library being useful for client development
too, and I'd like to give a little back to the * community, you
know?
There are other reasons, but I haven't the time to explain right now.
The above are the most important.
--
Alastair Maw
MX Telecom
http://www.mxtelecom.com
More information about the asterisk-users
mailing list