I’m using EAGI to connect a channel with some nodejs script for AI conversation with callers.
Everything works fine, but I have performance issues when simultaneous calls reach over 100.
because 100+ nodejs processes were launched on the asterisk machine.
To fix it, I need to use something like FastAGI, but unfortunately - EAGI doesn’t support audio channel streaming to remote machines. Using some proxy for EAGI (some light script to get fd3 audio and stream it over ws to a remote machine) obviously couldn’t fix the problem, because processes will be launched on the asterisk machine.
Is there any option to use FastAGI with audio channel streaming?
Is Jack() capable of resolving performance issues, and is it a scalable solution (audio channel streaming to remote machines with no additional processing created on the asterisk machine)?
I found AudioFork on GitHub, but it seems it works only with asterisk 16+ and has issues with stable work.
I considered building a PBX with nodejs and routing calls from Asterisk to it via Dial(), but it would be a lot of work for me and I wouldn’t be able to control the calls with AGI commands.
Really, no one has yet created a patch for EAGI to work like FastAGI over the network?
PS. FastAgi works really well. I can make about 800+ simultaneous calls. Asterisk v11 with chan_sip.