diff options
author | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-09-14 19:49:04 +0000 |
---|---|---|
committer | tilghman <tilghman@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-09-14 19:49:04 +0000 |
commit | bc2f7145e6191a971c5466b0842862c84873280a (patch) | |
tree | 93ee92b9504fccd5b643ffe38cb7d7d446ee897d /apps | |
parent | d5a52be930184830077b4362a30192ba1ea26c52 (diff) |
Merged revisions 218361 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r218361 | tilghman | 2009-09-14 14:29:48 -0500 (Mon, 14 Sep 2009) | 11 lines
Recorded merge of revisions 218331 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r218331 | tilghman | 2009-09-14 14:16:35 -0500 (Mon, 14 Sep 2009) | 4 lines
Don't say "Please try again" if we don't give the user another chance to try again.
(issue #15055, SWP-129)
Reported by: jthurman
........
................
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@218362 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps')
-rw-r--r-- | apps/app_voicemail.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index 04ad657f1..64fb016ad 100644 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -634,6 +634,7 @@ static char vm_newpassword[80] = "vm-newpassword"; static char vm_passchanged[80] = "vm-passchanged"; static char vm_reenterpassword[80] = "vm-reenterpassword"; static char vm_mismatch[80] = "vm-mismatch"; +static char vm_pls_try_again[80] = "vm-pls-try-again"; static struct ast_flags globalflags = {0}; @@ -7349,6 +7350,9 @@ static int vm_newuser(struct ast_channel *chan, struct ast_vm_user *vmu, struct cmd = ast_play_and_wait(chan, vm_mismatch); if (++tries == 3) return -1; + if (cmd != 0) { + cmd = ast_play_and_wait(chan, vm_pls_try_again); + } } if (pwdchange & PWDCHANGE_INTERNAL) vm_change_password(vmu, newpassword); @@ -7457,6 +7461,9 @@ static int vm_options(struct ast_channel *chan, struct ast_vm_user *vmu, struct if (strcmp(newpassword, newpassword2)) { ast_log(LOG_NOTICE, "Password mismatch for user %s (%s != %s)\n", vms->username, newpassword, newpassword2); cmd = ast_play_and_wait(chan, vm_mismatch); + if (!cmd) { + cmd = ast_play_and_wait(chan, vm_pls_try_again); + } break; } if (pwdchange & PWDCHANGE_INTERNAL) @@ -9575,6 +9582,9 @@ static int load_config(int reload) ast_copy_string(vm_reenterpassword, val, sizeof(vm_reenterpassword)); if ((val = ast_variable_retrieve(cfg, "general", "vm-mismatch"))) ast_copy_string(vm_mismatch, val, sizeof(vm_mismatch)); + if ((val = ast_variable_retrieve(cfg, "general", "vm-pls-try-again"))) { + ast_copy_string(vm_pls_try_again, val, sizeof(vm_pls_try_again)); + } /* load configurable audio prompts */ if ((val = ast_variable_retrieve(cfg, "general", "listen-control-forward-key")) && is_valid_dtmf(val)) ast_copy_string(listen_control_forward_key, val, sizeof(listen_control_forward_key)); |