From 019d707dc2a1d82c0a82be4420a48cb6e4d7e7c7 Mon Sep 17 00:00:00 2001 From: Martin Pycko Date: Wed, 5 Nov 2003 16:48:38 +0000 Subject: [PATCH] Add PRI_CAUSE feature for PRI ... If you set PRI_CAUSE=17 with SetVar and then call Hangup app the PRI will disconnect with this cause (it overrides the cause sent if we get it from incoming call) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1696 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_zap.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/channels/chan_zap.c b/channels/chan_zap.c index 3d929490ca..c68bf8e1c3 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -1797,8 +1797,14 @@ static int zt_hangup(struct ast_channel *ast) pri_hangup(p->pri->pri, p->call, -1); p->call = NULL; } else { + char *cause = pbx_builtin_getvar_helper(ast,"PRI_CAUSE"); + int icause = ast->hangupcause ? hangup_cause2pri(ast->hangupcause) : -1; p->alreadyhungup = 1; - pri_hangup(p->pri->pri, p->call, ast->hangupcause ? hangup_cause2pri(ast->hangupcause) : -1); + if (cause) { + if (atoi(cause)) + icause = atoi(cause); + } + pri_hangup(p->pri->pri, p->call, icause); } #endif if (res < 0)