From 64bf23e63b64b2c5b0589966503c19d0681e0881 Mon Sep 17 00:00:00 2001 From: bweschke Date: Wed, 3 May 2006 22:38:56 +0000 Subject: Optionally record audio of the page command for re-pages/playback. #6827 (JeffSaxe) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@24638 f38db490-d61c-443f-a65b-d21fe96a405b --- apps/app_page.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'apps/app_page.c') diff --git a/apps/app_page.c b/apps/app_page.c index bb3293851..178606a43 100644 --- a/apps/app_page.c +++ b/apps/app_page.c @@ -60,18 +60,21 @@ static const char *page_descrip = "caller is dumped into the conference as a speaker and the room is\n" "destroyed when the original caller leaves. Valid options are:\n" " d - full duplex audio\n" -" q - quiet, do not play beep to caller\n"; +" q - quiet, do not play beep to caller\n" +" r - record the page into a file -- you may want to first Set(MEETME_RECORDINGFILE=ReplayLastPage)\n"; LOCAL_USER_DECL; enum { PAGE_DUPLEX = (1 << 0), PAGE_QUIET = (1 << 1), + PAGE_RECORD = (1 << 2), } page_opt_flags; AST_APP_OPTIONS(page_opts, { AST_APP_OPTION('d', PAGE_DUPLEX), AST_APP_OPTION('q', PAGE_QUIET), + AST_APP_OPTION('r', PAGE_RECORD), }); struct calloutdata { @@ -177,7 +180,8 @@ static int page_exec(struct ast_channel *chan, void *data) if (options) ast_app_parse_options(page_opts, &flags, NULL, options); - snprintf(meetmeopts, sizeof(meetmeopts), "%ud|%sqxdw", confid, ast_test_flag(&flags, PAGE_DUPLEX) ? "" : "m"); + snprintf(meetmeopts, sizeof(meetmeopts), "%ud|%s%sqxdw", confid, (ast_test_flag(&flags, PAGE_DUPLEX) ? "" : "m"), + (ast_test_flag(&flags, PAGE_RECORD) ? "r" : "") ); while ((tech = strsep(&tmp, "&"))) { /* don't call the originating device */ @@ -198,7 +202,8 @@ static int page_exec(struct ast_channel *chan, void *data) res = ast_waitstream(chan, ""); } if (!res) { - snprintf(meetmeopts, sizeof(meetmeopts), "%ud|A%sqxd", confid, ast_test_flag(&flags, PAGE_DUPLEX) ? "" : "t"); + snprintf(meetmeopts, sizeof(meetmeopts), "%ud|A%s%sqxd", confid, (ast_test_flag(&flags, PAGE_DUPLEX) ? "" : "t"), + (ast_test_flag(&flags, PAGE_RECORD) ? "r" : "") ); pbx_exec(chan, app, meetmeopts); } -- cgit v1.2.3