From a3f16bca11bc6c3c9bae7141c8792f1fb17fb4de Mon Sep 17 00:00:00 2001 From: Jonathan Rose Date: Tue, 3 Apr 2012 21:03:01 +0000 Subject: [PATCH] Make m option for mixmonitor delete the source file once it is finished copying to vm. Review: https://reviewboard.asterisk.org/r/1842/ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8-digiumphones@361088 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_mixmonitor.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/apps/app_mixmonitor.c b/apps/app_mixmonitor.c index 7176de91a0..dbefb300ba 100644 --- a/apps/app_mixmonitor.c +++ b/apps/app_mixmonitor.c @@ -97,8 +97,9 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") @@ -390,6 +391,8 @@ static void copy_to_voicemail(struct mixmonitor *mixmonitor, char *ext) { struct vm_recipient *recipient = NULL; struct ast_vm_recording_data recording_data; + char filename[PATH_MAX]; + if (ast_string_field_init(&recording_data, 512)) { ast_log(LOG_ERROR, "Failed to string_field_init, skipping copy_to_voicemail\n"); return; @@ -415,6 +418,12 @@ static void copy_to_voicemail(struct mixmonitor *mixmonitor, char *ext) ast_app_copy_recording_to_vm(&recording_data); } + /* Delete the source file */ + snprintf(filename, sizeof(filename), "%s.%s", mixmonitor->filename, ext); + if (remove(filename)) { + ast_log(LOG_ERROR, "Failed to delete recording source file %s\n", filename); + } + /* Free the string fields for recording_data before exiting the function. */ ast_string_field_free_memory(&recording_data); } -- 2.47.2