diff options
author | jpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-05-06 18:47:28 +0000 |
---|---|---|
committer | jpeeler <jpeeler@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-05-06 18:47:28 +0000 |
commit | f6eb71cfd8012df31a11250c0d9ab7577fc93643 (patch) | |
tree | 78c1ae12c34813908efdadc9f9b2ef0745a1c4b7 /apps | |
parent | 37337662a0fd7424321f02dcbc0caff67b64b0b2 (diff) |
Revert 261698, code in trunk leads me to believe unadvertised options are supported.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@261699 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps')
-rw-r--r-- | apps/app_voicemail.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index 20cb63c95..03dd532a8 100644 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -9468,7 +9468,6 @@ static int play_record_review(struct ast_channel *chan, char *playfile, char *re case '7': case '8': case '9': - case '0': case '*': case '#': cmd = ast_play_and_wait(chan, "vm-sorry"); @@ -9487,6 +9486,25 @@ static int play_record_review(struct ast_channel *chan, char *playfile, char *re else return 1; #endif + case '0': + if (!ast_test_flag(vmu, VM_OPERATOR)) { + cmd = ast_play_and_wait(chan, "vm-sorry"); + break; + } + if (message_exists || recorded) { + cmd = ast_play_and_wait(chan, "vm-saveoper"); + if (!cmd) + cmd = ast_waitfordigit(chan, 3000); + if (cmd == '1') { + ast_play_and_wait(chan, "vm-msgsaved"); + cmd = '0'; + } else { + ast_play_and_wait(chan, "vm-deleted"); + DELETE(recordfile, -1, recordfile, vmu); + cmd = '0'; + } + } + return cmd; default: /* If the caller is an ouside caller, and the review option is enabled, allow them to review the message, but let the owner of the box review |