From 5068f61abdf9d9e09d2fc51c3e67be0ea3a030f6 Mon Sep 17 00:00:00 2001 From: Jeff Peeler Date: Fri, 7 Jan 2011 17:23:37 +0000 Subject: [PATCH] Merged revisions 300918 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r300918 | jpeeler | 2011-01-07 11:13:21 -0600 (Fri, 07 Jan 2011) | 7 lines Ensure good bye prompt in voicemail is played at the correct time. Specifically in the case of timing out but not leaving voicemail nothing should be heard. And when leaving voicemail it should be heard. ABE-2647 ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.2@300951 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_voicemail.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index 05f3926af6..9f97fde216 100644 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -5710,7 +5710,7 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, struct leave_vm_ } if (res == '0') { goto transfer; - } else if (res > 0) + } else if (res > 0 && res != 't') res = 0; if (duration < vmminsecs) @@ -10015,6 +10015,11 @@ static int vm_exec(struct ast_channel *chan, void *data) } res = leave_voicemail(chan, args.argv0, &leave_options); + if (res == 't') { + ast_play_and_wait(chan, "vm-goodbye"); + res = 0; + } + if (res == OPERATOR_EXIT) { res = 0; } @@ -11992,10 +11997,10 @@ static int play_record_review(struct ast_channel *chan, char *playfile, char *re /* Hang up or timeout, so delete the recording. */ ast_filedelete(tempfile, NULL); } - if (cmd == 't') - cmd = 0; - else if (outsidecaller) /* won't play if time out occurs */ + + if (cmd != 't' && outsidecaller) ast_play_and_wait(chan, "vm-goodbye"); + return cmd; } -- 2.47.2