Hi,
We have a special request to provide our client recordings which have the agent and the lead in separate wav files. At first I thought it would be a piece of cake since I thought asterisk recorded the channels separately in in.wav and out.wav files.
I have looked at the following cron scripts:
- Code: Select all
usr share astguiclient AST CRON audio 1 move mix.pl
usr share astguiclient AST CRON audio 2 compress.pl --MP3
--Removed slashes to not appear too spamy
The first script even describes the following:
- Code: Select all
# runs every 3 minutes and copies and mixes the -in and -out recordings in the
# monitor to the DONE directory for further processing. Very important for
# RAM-drive usage
I can understand disabling the mix scripts in the crontab, but even so, the recordings in the shm drive under var spool asterisk monitor show the out.wav files as essentially empty:
- Code: Select all
2206764 Sep 5 16:03 20130905-160048 4088670898 7253-in.wav
44 Sep 5 16:00 20130905-160048 4088670898 7253-out.wav
960684 Sep 5 16:03 20130905-160238 5163084196 7086-in.wav
44 Sep 5 16:02 20130905-160238 5163084196 7086-out.wav
348844 Sep 5 16:03 20130905-160258 5166328188 6942-in.wav
44 Sep 5 16:02 20130905-160258 5166328188 6942-out.wav
24364 Sep 5 16:04 20130905-160410 5165460218 6942-in.wav
44 Sep 5 16:04 20130905-160410 5165460218 6942-out.wav
At first I though the problem might be related to the fact that this campaign was running on the GoAutoDial 2 pbx's, so I went and checked our two older scratch installed clusters, and see the same 44 byte out.wav files.
It seems to me that disabling those scripts would essentially accomplish nothing.
Our campaigns are set to use 8309 as the recording extension. Looking at the extensions-vicidial.conf file, the dialplan for that extension is:
- Code: Select all
exten => 8309,1,Answer
exten => 8309,2,Monitor(wav,${CALLERID(name)})
exten => 8309,3,Wait,3600
exten => 8309,4,Hangup
Any ideas on how to record the channels separately?
I've had to resort to pulling the associated pcaps for each of the calls of interest, running them through a perl script that extracts the various RTP streams and outputs them in raw ulaw format. I then take the raw files and convert them to wav using sox. While this process works sometimes, it seems to not properly extract the RTP payload for about half of the calls. Not to mention, it is a bit of a hassle, even though I've scripted the above sequence.
For the pcaps that I wasn't able to successfully convert, i used a third party website which was able to extract some of the unsuccesful attemps, but again, this is even more of a hassle.
I have 3 clusters with the specs below. The signature box only allowed me 255 characters so I couldn't fit in all the details. Operationally, everything works great. I just need to have the split audio recordings
As far as our infrastructure is concerned, we have a call router with 5 gateways to 5 different voip providers. We also use one phone server for all the agent extensions, which the asterisk servers dial to connect the agents to the conference upon login.
Am I missing something incredibly obvious as to why the in.wav file contains both sides of the conversation, while the out.wav contains nothing?
Let me know what other information you might need, and I will be more than glad to post it for you.
Thanks in advance for any and all help,
Bond