Add option to wait to be able to explicitly send ACM via the Proceeding() application...
authorMatthew Fredrickson <creslin@digium.com>
Sat, 5 Jul 2008 03:26:42 +0000 (03:26 +0000)
committerMatthew Fredrickson <creslin@digium.com>
Sat, 5 Jul 2008 03:26:42 +0000 (03:26 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@128122 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_dahdi.c
configs/chan_dahdi.conf.sample

index b00bd23..081b4bb 100644 (file)
@@ -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);
index f08bca9..d90139f 100644 (file)
@@ -892,6 +892,11 @@ pickupgroup=1
 ;ss7_unknownprefix = 
 ;
 
+; This option is used to disable automatic sending of ACM when the call is started
+; in the dialplan.  If you do use this option, you will need to use the Proceeding()
+; application in the dialplan to send ACM.
+;ss7_explictacm=yes
+
 ; All settings apply to linkset 1
 ;linkset = 1
 
@@ -919,6 +924,12 @@ pickupgroup=1
 ; First signalling channel
 ;sigchan = 48
 
+; Additional signalling channel for this linkset (So you can have a linkset
+; with two signalling links in it).  It seems like a silly way to do it, but
+; for linksets with multiple signalling links, you add an additional sigchan
+; line for every additional signalling link on the linkset.
+;sigchan = 96
+
 ; Channels to associate with CICs on this linkset
 ;channel = 25-47
 ;