Skip to main content

recording conference calls

Posted by justdave on Wed, 01/28/2009

So I have a user who recently wanted to record a conference call... He checked the box to record the conference in the settings for that conference room. However after the call was completed, the recording was nowhere to be found. I did some poking around, and located the file on the filesystem (right where I expected it to be), however it didn't show up for the user to view in his recorded calls section or anywhere under the conference room management. Isn't this something that should be available to the conference room owners?

Also, I have a question on the filename conventions...

The file for his recording ended up being named "meetme-username-7391-15.sln". It literally had the word "username" in the filename like that, I didn't replace anything. 7391 was the number of the conference room. I've no idea what the 15 is for. There's no mention of a date/time in the filename, and is whatever "15" is enough to ensure always unique filenames? :) Is there somewhere I would go in Thirdlane to change the filename format?

In addition, I have RECORDING_FORMAT set to "wav" in my global settings, is there some reason it wound up saving it as signed linear? Had to use the "import raw" in Audacity to open the thing (16-bit signed PCM at 8000Hz in case anyone else needs to do the same).


Submitted by justdave on Tue, 02/10/2009 Permalink

So I figured out the problem on this... There's this in the script:

;; may need absolute path???

exten => s,n,Set(MEETME_RECORDINGFILE=conf-${confno}-${STRFTIME(,,%F-%T)}-${confno}${TL_DASH}${tenant})

Turns out, yes, it really does need the absolute path. It also seems to choke on the lack of a timezone being specified.

I changed it to this:

exten => s,n,Set(MEETME_RECORDINGFILE=/var/spool/asterisk/meetme/conf-${confno}-${STRFTIME(,UTC,%F-%T-UTC)}${TL_DASH}${tenant})}

And now my recordings work.

I imagine for a permanent fix it probably needs a variable for the path to the spool directory too.

Submitted by justdave on Tue, 02/10/2009 Permalink

I'm still not getting them to show up in the Recorded Calls panel of the conference owner, however... I even tried changing the filename back so it was exactly the same format it was originally just with the path in front and the timezone set (I had originally removed the redundant ${confno} variable and put the timezone indicator in the string, reverted both of those).

So what do I need to do to get the conference owner to be able to see the recordings?

Submitted by sdennis on Tue, 02/10/2009 Permalink

I am having the same issue here. I haven't ever used the conferencing until today and noticed the recordings are not available to the end user.

Submitted by justdave on Wed, 02/11/2009 Permalink

On another note... I discovered the hard way that the colons in the file names make it really hard to try to copy the files between machines if I need to get the file to someone some other way (since they don't show up in the UI)

ringring# scp conf-7391-2009-02-11-17\:54\:39-7391.wav root@people:/home/jpatel/

ssh: Could not resolve hostname conf-7391-2009-02-11-17: nodename nor servname provided, or not known

Suppose we could use dots instead of colons in the time? Although I suppose if it actually shows up in the UI it wouldn't matter.

Submitted by eeman on Wed, 02/11/2009 Permalink

colons, @ symbol, spaces, slashes are all no-no's in filename etiquette. For time, just using military time should suffice, 0125 1215 1647 etc

conf-7391-2009-02-11-175439-7391.wav .. not sure why your conf # is listed twice.

you'd have to change %T to %H%M%S so that it doesn't insert colons. and get the UI parser to recognize the format. I think conf room number and date/time should be all parsed into the filename. a lookup of the conf room should indicate which admin's are allowed to see it. I suppose, in the interim, the admin is grabbing the files for them?

Submitted by justdave on Thu, 02/12/2009 Permalink

It seems to be following the standard filename format used for the individual call recordings on an extension. Extension recordings start with "in-" or "out-" followed by the extension number, then the date and time, then the callerid of the incoming call or the number you dialed. Conference room recordings start with "conf-" instead, and since they have no "callerid" per-se, it just puts the conference room number into the callerid position in the filename to give the UI something to put there. That's my guess anyway. Which doesn't matter since the UI doesn't seem to show them anyway. :) There's a category for Conference recordings in the dropdown at the top of the Recordings page, but nothing's in it, even though there are recordings from conference rooms owned by that user on the filesystem.

And yeah, for right now, I've been grabbing the conference recording files off the filesystem to give to the owners when they request them.

Submitted by justdave on Thu, 02/12/2009 Permalink

I actually added the recording feature to thirdlane's conference script and donated it a while back... my original code had this in it:

exten => s,n,Set(MEETME_RECORDINGFILE=/var/spool/asterisk/meetme/conf-${confno}-rec-${STRFTIME(,GMT,%Y%m%dT%H%M%SZ)})

For the above example that would given a filename of conf-7391-rec-20090211T175439Z.wav

That's the date/time coding format used in aviation and weather reporting, not sure why I used that, but it was convenient at the time (probably because I didn't have to worry about separators :) )

Submitted by cbbs70a on Wed, 04/08/2009 Permalink

I now find myself trying to figure out how to record conference calls also. I think that the meetme-username-$extension-$conf_participient_number.wav is the actual username that a user records to identify themselves. I've added the absolute path but no joy yet.

Submitted by cbbs70a on Wed, 04/08/2009 Permalink

Has anybody figured out where the recorded calls page looks for recorded conference calls? Recorded extensions calls are kept in /var/spool/asterisk/monitor and are displayed from there. Conference calls are recorded in /var/spool/asterisk/meetme but they dont show up in the web page.

Submitted by eeman on Wed, 04/08/2009 Permalink

They should probably integrate with the whole conference management side of things instead of the recorded call section. Give anyone listed as admin the right to view/edit/delete those recordings.

Submitted by cbbs70a on Wed, 04/08/2009 Permalink

Nothing happens, although I can record a normal conversation just fine. In the conference options, I have 'record conference' checked. I tried both with and without adding an 'r' option which I thought would be somewhat redundant with the above option checked.

Submitted by cbbs70a on Mon, 04/27/2009 Permalink

I have yet to be able to record a conference. I have 'record conference' checked on the 'edit conference room' page. I tried it as both a conference user and conference admin. Am I missing something obvious? All I did to try and record a call is hit "*4" which is defined in features.conf for automon. Its the same key sequence I hit to record a normal phone call which I can do trivially.

I am open to suggestions.

Thanks

FSD

Submitted by eeman on Mon, 04/27/2009 Permalink

recording a conference isnt part of the 'one touch recording' of features.conf. Are you using the macro-tl-dialconference-prompted script to join the conference room? that script adds the 'r' option to the MeetMe application and sets the filename to:

MEETME_RECORDINGFILE=conf-${confno}-${STRFTIME(,,%F-%T)}-${confno}${TL_DASH}${tenant}

Submitted by cbbs70a on Mon, 04/27/2009 Permalink

I didn't know about the 'one touch'. I do now. I was using macro-tl-dialconference, not macro-tl-dialconference-prompted, although MEETME_RECORDINGFILE is defined in both. The recorded file does not appear in "recorded calls", but that is a seperate issue.

Anyway, as usual, "I'm not worthy, I'm not worthy". Thanks for all your help.

FSD

Submitted by cbbs70a on Tue, 04/28/2009 Permalink

Neither conference nor queues show any files even though I have recorded both. The files are in /var/spool/asterisk/monitor.

Submitted by cbbs70a on Wed, 04/29/2009 Permalink

Actually, they were initially in the meetme directory but did not show up there so I tried the monitor directory also with no success.

Submitted by cbbs70a on Wed, 04/29/2009 Permalink

On a similiar note, does anyone know where the filename convention for calls recorded using "one-touch recording" is defined? I see files that look like the following:

auto-1240948765-in-200-2009-04-28-14:31:46-3015553084.wav

Submitted by eeman on Wed, 04/29/2009 Permalink

its defined in the dialplan for recording format at various places.

btw change

MEETME_RECORDINGFILE=conf-${confno}-${STRFTIME(,,%F-%T)}-${confno}${TL_DASH}${tenant}

to MEETME_RECORDINGFILE=/var/spool/asterisk/meetme/conf-${confno}-${STRFTIME(,,%F-%T)}-${confno}${TL_DASH}${tenant}