aboutsummaryrefslogtreecommitdiffstats
path: root/main/pbx.c
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-08-30 14:53:43 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-08-30 14:53:43 +0000
commitc7f76071cf89dd8430d9f1d6358101e14eecc44e (patch)
tree9898368db98a49620a4e1872d28f42306a7f4575 /main/pbx.c
parent0c4e7c342869efbc16db826a3ab6b94cbb6d4f60 (diff)
(closes issue #10603)
Reported by: jmls Patches: pbx.diff uploaded by jmls (license 141) Backport changes from 81372. Add REASON dialplan variable for when an originated call fails and the failed extension is executed. git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@81375 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/pbx.c')
-rw-r--r--main/pbx.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/main/pbx.c b/main/pbx.c
index f3dcea8c7..1adb4da8e 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -5034,10 +5034,13 @@ int ast_pbx_outgoing_exten(const char *type, int format, void *data, int timeout
if (ast_exists_extension(chan, context, "failed", 1, NULL)) {
chan = ast_channel_alloc(0, AST_STATE_DOWN, 0, 0, "", "", "", 0, "OutgoingSpoolFailed");
if (chan) {
+ char failed_reason[4] = "";
if (!ast_strlen_zero(context))
ast_copy_string(chan->context, context, sizeof(chan->context));
set_ext_pri(chan, "failed", 1);
ast_set_variables(chan, vars);
+ snprintf(failed_reason, sizeof(failed_reason), "%d", *reason);
+ pbx_builtin_setvar_helper(chan, "REASON", failed_reason);
if (account)
ast_cdr_setaccount(chan, account);
ast_pbx_run(chan);