From 932eae69abeb30e1ba3df152c393530aee19eac0 Mon Sep 17 00:00:00 2001 From: Sean Bright <sean.bright@gmail.com> Date: Thu, 25 Feb 2021 14:55:22 -0500 Subject: [PATCH] app_page.c: Don't fail to Page if beep sound file is missing ASTERISK-16799 #close Change-Id: I40367b0d6dbf66a39721bde060c8b2d734a61cf4 --- apps/app_page.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/apps/app_page.c b/apps/app_page.c index df601e77c0..7f498ee570 100644 --- a/apps/app_page.c +++ b/apps/app_page.c @@ -160,6 +160,8 @@ AST_APP_OPTIONS(page_opts, { AST_APP_OPTION('n', PAGE_NOCALLERANNOUNCE), }); +#define PAGE_BEEP "beep" + /* We use this structure as a way to pass this to all dialed channels */ struct page_options { char *opts[OPT_ARG_ARRAY_SIZE]; @@ -402,9 +404,14 @@ static int page_exec(struct ast_channel *chan, const char *data) ast_free(predial_callee); if (!ast_test_flag(&options.flags, PAGE_QUIET)) { - res = ast_streamfile(chan, "beep", ast_channel_language(chan)); - if (!res) - res = ast_waitstream(chan, ""); + if (!ast_fileexists(PAGE_BEEP, NULL, NULL)) { + ast_log(LOG_WARNING, "Missing required sound file: '" PAGE_BEEP "'\n"); + } else { + res = ast_streamfile(chan, PAGE_BEEP, ast_channel_language(chan)); + if (!res) { + res = ast_waitstream(chan, ""); + } + } } if (!res) { -- GitLab