[asterisk-users] Call Recording Servers

Matthew J. Roth mroth at imminc.com
Fri Apr 13 17:35:11 MST 2007


Savoy, Kevin - Williston, ND wrote:
>
> We are looking at using Asterisk as a call recording server for an 
> Avaya VoIP S8700 system in a multi-site VoIP Call Center. All calls 
> will be coming in to one location and sent out via VoIP to other call 
> centers.
>
>  
>
> What kind of specs should we be looking at purchasing for our Asterisk 
> server to be record up 200-300 calls simultaneously?
>
I can tell you from experience that disk I/O will be your bottleneck.  
In our testing, call quality began to seriously deteriorate at around 60 
simultaneous calls.  Our solution was to record to a RAM disk and move 
the leg files over NFS to a dedicated server for mixing, indexing, and 
retrieval.

It has been a while since the tests, but as far as I know app_monitor 
based call recording still has a disk write in the code path that 
bridges two channels.  Unless another kind reader of this list can 
provide updated information or a better call recording method, I'd 
assume this is still the case.

For our inbound call center operations, we regularly record roughly 
200-300 simultaneous calls on a single server.  The agents and queues 
also reside on that server, but we have taken great care to offload as 
many processes as possible.  We aren't 100% stable, but I believe most 
of our downtime can be attributed to app_queue.

If no new information surfaces, I'd be happy to talk with you about 
dimensioning and our overall architecture.  Keep in mind that if its an 
option, breaking this task down so that it can be spread across multiple 
machines will minimize the number of headaches you're going to have.
>
> Linux runs in 64 bit architecture, but does Asterisk actually take 
> advantage of the 64 bit?
>
That really depends on how you define "take advantage."  We are running 
on a 64-bit architecture, but I have no idea if we're any better off 
because of it.

 From what I've read, you typically have to benchmark processes to see 
if they are faster on a 64-bit OS.  One definite advantage of 32-bit is 
most code is more heavily tested for it.  Some assumptions that 
programmers might make, such as casting a pointer to an int, do not port 
very well to 64-bit.

However, if you end up going down the RAM disk path, you might want to 
research whether or not a 64-bit OS would be necessary to provide enough 
memory.
>
>  Has anyone tried doing this already? What would be the best way to 
> get the calls from the Avaya PBX over to the Asterisk recording 
> server? Any thoughts?
>  
>
I haven't implemented this particular case, but off the top of my head I 
would say that you could register the Avaya PBX as a SIP user agent.  
Then you could direct all of the calls to the Asterisk server which 
would utilize dialplan logic to record them and bridge them to their 
desired endpoints.

Once again, I'm relying on the other readers of this list to point out 
any naivety on my part.  My best thinking doesn't usually occur at 8:30 
on Friday evening.

I hope this is helpful,

Matthew Roth
InterMedia Marketing Solutions
Software Engineer and Systems Developer



More information about the asterisk-users mailing list