diff --git a/apps/app_record.c b/apps/app_record.c index 1a3a620aa7ef78cb0fbc45ebc4f2125e1cf94049..a06108162b73bb119a8fe48622ad2ed4858ee928 100755 --- a/apps/app_record.c +++ b/apps/app_record.c @@ -42,6 +42,7 @@ static char *descrip = " 'n' : do not answer, but record anyway if line not yet answered\n" " 'a' : append to existing recording rather than replacing\n" " 't' : use alternate '*' terminator key instead of default '#'\n" +" 'q' : quiet (do not play a beep tone)\n" "\n" "If filename contains '%d', these characters will be replaced with a number\n" "incremented by one each time the file is recorded. \n\n" @@ -79,6 +80,7 @@ static int record_exec(struct ast_channel *chan, void *data) int option_noanswer = 0; int option_append = 0; int terminator = '#'; + int option_quiet = 0; int rfmt = 0; int flags; @@ -143,6 +145,8 @@ static int record_exec(struct ast_channel *chan, void *data) option_append = 1; if (strchr(options, 't')) terminator = '*'; + if (strchr(options, 'q')) + option_quiet = 1; } } @@ -174,14 +178,17 @@ static int record_exec(struct ast_channel *chan, void *data) } if (!res) { - /* Some code to play a nice little beep to signify the start of the record operation */ - res = ast_streamfile(chan, "beep", chan->language); - if (!res) { - res = ast_waitstream(chan, ""); - } else { - ast_log(LOG_WARNING, "ast_streamfile failed on %s\n", chan->name); + + if (!option_quiet) { + /* Some code to play a nice little beep to signify the start of the record operation */ + res = ast_streamfile(chan, "beep", chan->language); + if (!res) { + res = ast_waitstream(chan, ""); + } else { + ast_log(LOG_WARNING, "ast_streamfile failed on %s\n", chan->name); + } + ast_stopstream(chan); } - ast_stopstream(chan); /* The end of beep code. Now the recording starts */