diff options
author | Matthew Fredrickson <creslin@digium.com> | 2008-07-05 03:26:42 +0000 |
---|---|---|
committer | Matthew Fredrickson <creslin@digium.com> | 2008-07-05 03:26:42 +0000 |
commit | 199067da4ff325a5262a09f2931ebdd528243c03 (patch) | |
tree | 6ff02220c17affd8a2036f5d6537772c8735f9e2 /channels | |
parent | 1d0637521ac4630b10aa2d005e7a233861fae861 (diff) |
Add option to wait to be able to explicitly send ACM via the Proceeding() application in the dialplan. Also minor documentation update explaining how to setup multiple signalling links within a linkset
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@128122 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_dahdi.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index b00bd239e..081b4bbb6 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -339,6 +339,8 @@ static int ringt_base = DEFAULT_RINGT; #define SS7_NAI_DYNAMIC -1 +#define LINKSET_FLAG_EXPLICITACM (1 << 0) + struct dahdi_ss7 { pthread_t master; /*!< Thread of master */ ast_mutex_t lock; @@ -359,6 +361,7 @@ struct dahdi_ss7 { char unknownprefix[20]; /*!< for unknown dialplans */ struct ss7 *ss7; struct dahdi_pvt *pvts[MAX_CHANNELS]; /*!< Member channel pvt structs */ + int flags; /*!< Linkset flags */ }; static struct dahdi_ss7 linksets[NUM_SPANS]; @@ -9303,8 +9306,10 @@ static void ss7_start_call(struct dahdi_pvt *p, struct dahdi_ss7 *linkset) if (res < 0) ast_log(LOG_WARNING, "Unable to set law on channel %d\n", p->channel); - p->proceeding = 1; - isup_acm(ss7, p->ss7call); + if (!(linkset->flags & LINKSET_FLAG_EXPLICITACM)) { + p->proceeding = 1; + isup_acm(ss7, p->ss7call); + } ast_mutex_unlock(&linkset->lock); c = dahdi_new(p, AST_STATE_RING, 1, SUB_REAL, law, 0); |