aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-09-02 04:57:37 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2004-09-02 04:57:37 +0000
commit656d6c451b51c789d07a5a1ebea601387271df64 (patch)
tree2fb98a99cc9ab2bf0b1d05d65ef7a565a506a072
parent328b52901e8d51562318f4869863b0457bd7a361 (diff)
Improve voicemail verbosity (bug #2351)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3709 f38db490-d61c-443f-a65b-d21fe96a405b
-rwxr-xr-xapps/app_voicemail.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c
index b66b215d7..a811041ef 100755
--- a/apps/app_voicemail.c
+++ b/apps/app_voicemail.c
@@ -1250,6 +1250,8 @@ static int play_and_prepend(struct ast_channel *chan, char *playfile, char *reco
if (totalsilence > maxsilence) {
/* Ended happily with silence */
+ if (option_verbose > 2)
+ ast_verbose( VERBOSE_PREFIX_3 "Recording automatically stopped after a silence of %d seconds\n", totalsilence/1000);
ast_frfree(f);
gotsilence = 1;
outmsg=2;
@@ -1468,6 +1470,8 @@ static int play_and_record(struct ast_channel *chan, char *playfile, char *recor
if (totalsilence > maxsilence) {
/* Ended happily with silence */
+ if (option_verbose > 2)
+ ast_verbose( VERBOSE_PREFIX_3 "Recording automatically stopped after a silence of %d seconds\n", totalsilence/1000);
ast_frfree(f);
gotsilence = 1;
outmsg=2;
@@ -1902,7 +1906,10 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, int silent, int
close(fd);
}
if (duration < vmminmessage) {
+ if (option_verbose > 2)
+ ast_verbose( VERBOSE_PREFIX_3 "Recording was %d seconds long but needs to be at least %d - abandoning\n", duration, vmminmessage);
vm_delete(fn);
+ /* XXX We should really give a prompt too short/option start again, with leave_vm_out called only after a timeout XXX */
goto leave_vm_out;
}
/* Are there to be more recipients of this message? */
@@ -4286,6 +4293,8 @@ static int load_config(void)
if ((s = ast_variable_retrieve(cfg, "general", "minmessage"))) {
if (sscanf(s, "%d", &x) == 1) {
vmminmessage = x;
+ if (maxsilence <= vmminmessage)
+ ast_log(LOG_WARNING, "maxsilence should be less than minmessage or you may get empty messages\n");
} else {
ast_log(LOG_WARNING, "Invalid min message time length\n");
}