From: Anthony Minessale Date: Tue, 30 Oct 2012 20:33:35 +0000 (-0500) Subject: FS-4775 --resolve use vars voicemail_callback_dialplan and voicemail_callback_context X-Git-Tag: v1.3.1~38 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=74dbbb014f6efe8edc4ac698786cd80bd251d5ef;p=thirdparty%2Ffreeswitch.git FS-4775 --resolve use vars voicemail_callback_dialplan and voicemail_callback_context --- diff --git a/src/mod/applications/mod_voicemail/mod_voicemail.c b/src/mod/applications/mod_voicemail/mod_voicemail.c index 8e58bfbac5..e6ce3aecf0 100644 --- a/src/mod/applications/mod_voicemail/mod_voicemail.c +++ b/src/mod/applications/mod_voicemail/mod_voicemail.c @@ -1604,7 +1604,18 @@ static switch_status_t listen_file(switch_core_session_t *session, vm_profile_t *cc.buf = '\0'; goto play_file; } else if (!strcmp(input, profile->callback_key)) { - switch_core_session_execute_exten(session, cbt->cid_number, profile->callback_dialplan, profile->callback_context); + const char *callback_dialplan; + const char *callback_context; + + if (!(callback_dialplan = switch_channel_get_variable(channel, "voicemail_callback_dialplan"))) { + callback_dialplan = profile->callback_dialplan; + } + + if (!(callback_context = switch_channel_get_variable(channel, "voicemail_callback_context"))) { + callback_context = profile->callback_context; + } + + switch_core_session_execute_exten(session, cbt->cid_number, callback_dialplan, callback_context); } else if (!strcmp(input, profile->forward_key)) { char *cmd = NULL; char *new_file_path = NULL;