From: Matthew Jordan Date: Thu, 22 Jan 2015 14:23:41 +0000 (+0000) Subject: apps/app_voicemail: Trigger MWI notification with MixMonitor m() option X-Git-Tag: 14.0.0-beta1~1304 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7fcc9ce8bca09810f766a04c0a52be8f83ff7503;p=thirdparty%2Fasterisk.git apps/app_voicemail: Trigger MWI notification with MixMonitor m() option The MixMonitor m() option allows a recording to be pushed to a specific voicemail mailbox. If the message is delivered to the mailbox's INBOX, however, no MWI notification is currently raised. This patch corrects the issue by properly calling notify_new_state from the msg_create_from_file function. This will cause MWI to be triggered if the message was placed in the mailbox's INBOX. ASTERISK-24709 #close Reported by: Gareth Palmer patches: app_voicemail-430919.patch uploaded by Gareth Palmer (License 5169) ........ Merged revisions 430920 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 430921 from http://svn.asterisk.org/svn/asterisk/branches/13 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@430922 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/apps/app_voicemail.c b/apps/app_voicemail.c index 86724f3f29..ad99232aeb 100644 --- a/apps/app_voicemail.c +++ b/apps/app_voicemail.c @@ -1098,6 +1098,8 @@ static void read_password_from_file(const char *secretfn, char *password, int pa static int write_password_to_file(const char *secretfn, const char *password); static const char *substitute_escapes(const char *value); static int message_range_and_existence_check(struct vm_state *vms, const char *msg_ids [], size_t num_msgs, int *msg_nums, struct ast_vm_user *vmu); +static void notify_new_state(struct ast_vm_user *vmu); + /*! * Place a message in the indicated folder * @@ -6373,6 +6375,7 @@ static int msg_create_from_file(struct ast_vm_recording_data *recdata) } STORE(dir, recipient->mailbox, recipient->context, msgnum, NULL, recipient, fmt, 0, vms, "", msg_id); + notify_new_state(recipient); } free_user(recipient);