--- /usr/local/src/asterisk-1.4.19.1/apps/app_meetme.c 2008-03-19 18:57:59.000000000 -0400 +++ version06.c 2008-05-05 16:08:05.000000000 -0400 @@ -265,6 +265,12 @@ "continue.\n" "A ZAPTEL INTERFACE MUST BE INSTALLED FOR CONFERENCING FUNCTIONALITY.\n"; +/* David Backeberg + May 5, 2008 + adding an option here + Q - Stop Recording +*/ + static const char *descrip3 = " MeetMeAdmin(confno,command[,user]): Run admin command for conference\n" " 'e' -- Eject last user that joined\n" @@ -276,6 +282,7 @@ " 'M' -- Mute one user\n" " 'n' -- Unmute all users in the conference\n" " 'N' -- Mute all non-admin users in the conference\n" +" 'Q' -- Stop recording - David Backeberg\n" " 'r' -- Reset one user's volume settings\n" " 'R' -- Reset all users volume settings\n" " 's' -- Lower entire conference speaking volume\n" @@ -2884,6 +2891,23 @@ AST_LIST_TRAVERSE(&cnf->userlist, user, list) reset_volumes(user); break; + /* David Backeberg is adding the next few statements */ + case 81: /* Q: Stop the recording! */ + if (cnf->recording == MEETME_RECORD_ACTIVE ) { + cnf-> recording = MEETME_RECORD_TERMINATE; + AST_LIST_UNLOCK(&confs); + while(1) { + usleep(1); + AST_LIST_LOCK(&confs); + if (cnf->recording == MEETME_RECORD_OFF) + break; + } + cnf->recordingfilename=NULL; + cnf->recordingformat=NULL; + cnf->recordthread=AST_PTHREADT_NULL; + } + break; + /* end of this particular David Backeberg change */ case 114: /* r: Reset user's volume level */ if (user) reset_volumes(user);