diff options
author | jim <jim@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-12-09 22:39:14 +0000 |
---|---|---|
committer | jim <jim@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-12-09 22:39:14 +0000 |
commit | 2795ea48a5f7b4208f67459df0577224f787339d (patch) | |
tree | b4d0d63b4901126bc53ced3a093084894255b389 /channels/chan_zap.c | |
parent | fcec8c9fb4dd0bbec896104cd430b035c9bf8bd2 (diff) |
Fixed call parking, added separate paramater to allow/disallow call parking on
Zaptel interfaces (canpark=yes/no in zapata.conf), added urlbase paramater to
Monitor so that a url can optionally be included in CDR (user field), cleaned up a couple of minor things
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4413 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_zap.c')
-rwxr-xr-x | channels/chan_zap.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c index 9f6475e8a..76a8c0f7b 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -196,6 +196,8 @@ static int threewaycalling = 0; static int transfer = 0; +static int canpark = 0; + static int cancallforward = 0; static float rxgain = 0.0; @@ -521,6 +523,7 @@ static struct zt_pvt { int callwaitingcallerid; int threewaycalling; int transfer; + int canpark; int digital; int outgoing; int dnd; @@ -5129,7 +5132,7 @@ static void *ss_thread(void *data) getforward = 0; memset(exten, 0, sizeof(exten)); len = 0; - } else if (p->transfer && !strcmp(exten, ast_parking_ext()) && + } else if ((p->transfer || p->canpark) && !strcmp(exten, ast_parking_ext()) && p->subs[SUB_THREEWAY].owner && ast_bridged_channel(p->subs[SUB_THREEWAY].owner)) { /* This is a three way call, the main call being a real channel, @@ -6596,6 +6599,7 @@ static struct zt_pvt *mkintf(int channel, int signalling, int radio, struct zt_p tmp->confno = -1; tmp->propconfno = -1; } + tmp->canpark = canpark; tmp->transfer = transfer; strncpy(tmp->defcontext,context,sizeof(tmp->defcontext)-1); strncpy(tmp->language, language, sizeof(tmp->language)-1); @@ -9333,6 +9337,8 @@ static int setup_zap(int reload) adsi = ast_true(v->value); } else if (!strcasecmp(v->name, "transfer")) { transfer = ast_true(v->value); + } else if (!strcasecmp(v->name, "canpark")) { + canpark = ast_true(v->value); } else if (!strcasecmp(v->name, "echocancelwhenbridged")) { echocanbridged = ast_true(v->value); } else if (!strcasecmp(v->name, "busydetect")) { |