Page 1 of 1

Voice Recordings on SAN

PostPosted: Fri Aug 10, 2007 6:20 am
by dkstinger
Hi

I am doing a dry run for a big call center.

This is my setup:
I have a P-III machine with three virtual NICs.
i. One IP is for Asterisk,
ii. another IP bound to MySQL (so as to simulate a network database server),
iii. third IP bound to apache (the interface to the agent web browser)

The call center guys want a SAN or a separate server with a RAID to be the storage place for all the voice records. How can VICIDIAL be configured for that?

If I add yet a fourth IP address and simulate it as my SAN device, how can I configure VICIDIAL to write all the voice recordings to it?

(I know I'm crazy to dry run a big call center on a P-III machine :D)

PostPosted: Fri Aug 10, 2007 6:35 am
by dkstinger
One obvious way is to write a small bash bot which would keep throwing the recordings on the SAN using ftp push mode. The monitor directory can be cleaned up manually from time to time. But is there a more "in-built" way to achieve the same?

PostPosted: Fri Aug 10, 2007 8:31 am
by mflorell
How many agents and concurrent recordings are we talking about here?

PostPosted: Fri Aug 10, 2007 11:02 am
by dkstinger
Hi
Initially, we will have 1 Asterisk/Vicidial server which would serve 25 agents. This will grow rapidly and we will add 1 server for every 25 agents. The webserver, SQL server and SAN/storage server will not grow. (Though they will be given performance upgrades according to the needs)

Right now, we are talking about 25 agents being recorded at the busy hour. There will not be a lot of conferencing.

Since writing to a local HDD, then reading from it to move it to the SAN, all during the time when the server is taking calls doesn't sound like a good idea.

I thought about it and this is what came to my mind: When a call is established, the call server (Asterisk/Vicidial) can call up the SAN, open a monodirectional channel and dump all the sound on that. All the format conversion can take place on the SAN. This way, minimal buffering would be required at the call server. If you are familiar with lawful intercept systems used in conventional telephony, this might seem analogous.

Ofcourse writing all this code will take time. What option do I have right now?

(BTW, is someone out there working on lawful intercept systems for VoIP?)

PostPosted: Fri Aug 10, 2007 11:16 am
by dkstinger
What is the exact method used for manager call monitoring? Can we use a similar method to store voice to a remote IP?

PostPosted: Fri Aug 10, 2007 4:12 pm
by mflorell
It is possible to route an audio stream to another machine to record, but the quality will not be as good , and it will cause more load than doing it on the host machine. The exception to this is if you are using SIP trunks, you can use OrecX to sniff network traffic and record unobtrusively:
http://www.orecx.com/