[asterisk-users] Change RX Signalling Bits in Dahdi drivers

Justin Killen jkillen at allamericanasphalt.com
Wed Mar 6 10:24:54 CST 2013


You'd probably be better off sending this to the dev list (asterisk-dev)

Justin Killen

From: asterisk-users-bounces at lists.digium.com [mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Optical Phoenix
Sent: Tuesday, March 05, 2013 5:56 PM
To: asterisk-users at lists.digium.com
Subject: [asterisk-users] Change RX Signalling Bits in Dahdi drivers

Greeting,
I am trying to setup PLAR signalling in asterisk. I have modified the FXSLS TX bits in dahdi-base.c on line 2580, and I can make calls.

                                    .sig_type = DAHDI_SIG_FXSLS,
                                    .bits[DAHDI_TXSIG_ONHOOK]  = DAHDI_BITS_ABCD, /*changed by  for PLAR*/
                                    .bits[DAHDI_TXSIG_OFFHOOK] = (0), /*changed by  for PLAR*/
                                    .bits[DAHDI_TXSIG_START]   = DAHDI_BITS_ABCD, /*changed by for PLAR*/

When I got to change the rx, its a bit more complex. I have learned from this list that dahdi_rbsbits() handles the rx bits, but my changes seem to have no effect. Does anyone have a good understanding of this function? I would appreciate any help you can provide.


case DAHDI_SIG_FXSLS:
                        if (!(cursig & DAHDI_BBIT)) {      /*Dennis RINGING  */  /*<----- I think this is checking if the state is different from a set value? needs clarification*/
                                    /* Check for ringing first */
                                    __dahdi_hooksig_pvt(chan, DAHDI_RXSIG_RING);
                                    break;
                        }
                        if ((chan->sig != DAHDI_SIG_FXSLS) && (cursig & DAHDI_ABIT)) {  /*<------ Why is it checking DAHDI_SIG_FXSLS? do I need to modify this to be 1111 also?*/
                                       /* if went on hook */
                                    __dahdi_hooksig_pvt(chan, DAHDI_RXSIG_ONHOOK);  /*<----------I think this is passing it to a function that reacts to the signal in this case the onhook signal?*/
                        } else {
                                    __dahdi_hooksig_pvt(chan, DAHDI_RXSIG_OFFHOOK);  /* <------ same here but with the off hook? */
                        }
                        break;
              case DAHDI_SIG_CAS:
                        /* send event that something changed */
                        __qevent(chan, DAHDI_EVENT_BITSCHANGED);
                        break;

Thanks
Dennis
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20130306/1fad42ab/attachment.htm>


More information about the asterisk-users mailing list