aboutsummaryrefslogtreecommitdiffstats
path: root/channels/sig_pri.c
AgeCommit message (Collapse)AuthorFilesLines
2009-10-30Cleanup some flags on DAHDI PRI channel hangup.rmudgett1-1/+8
* Cleanup some flags on DAHDI PRI channel hangup. (sig_pri split) * Make sure the outgoing flag is cleared if a new channel fails to get created for outgoing calls. * Remove some unused flags since sig_pri was split. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@226648 f38db490-d61c-443f-a65b-d21fe96a405b
2009-10-23Add to chan_dahdi ISDN HOLD, Call deflection, and keypad facility support.rmudgett1-103/+644
* Added handling of received HOLD/RETRIEVE messages and the optional ability to transfer a held call on disconnect similar to an analog phone. * Added CallRerouting/CallDeflection support for Q.SIG, ETSI PTP, ETSI PTMP. Will reroute/deflect an outgoing call when receive the message. Can use the DAHDISendCallreroutingFacility to send the message for the supported switches. * Added ability to send/receive keypad digits in the SETUP message. Send keypad digits in SETUP message: Dial(DAHDI/g1[/K<keypad_digits>][/extension]) Access any received keypad digits in SETUP message by: ${CHANNEL(keypad_digits)} * Added support for BRI PTMP NT mode. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@225692 f38db490-d61c-443f-a65b-d21fe96a405b
2009-10-22Search for the subaddress only within the extension section of the dial string.rmudgett1-16/+17
Dial(DAHDI/(g|G|r|R)<group#(0-63)>[c|r<cadance#>|d][/extension]) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@225446 f38db490-d61c-443f-a65b-d21fe96a405b
2009-10-22Add support for calling and called subaddress. Partial support for COLP ↵rmudgett1-1/+292
subaddress. The Telecom Specs in NZ suggests that SUB ADDRESS is always on, so doing "desk to desk" between offices each with an asterisk box over the ISDN should then be possible, without a whole load of DDI numbers required. (closes issue #15604) Reported by: alecdavis Patches: asterisk_subaddr_trunk.diff11.txt uploaded by alecdavis (license 585) Some minor modificatons were made. Tested by: alecdavis, rmudgett Review: https://reviewboard.asterisk.org/r/405/ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@225357 f38db490-d61c-443f-a65b-d21fe96a405b
2009-10-21Make PRI_SUBCMD_xxx handling subaddress friendly.rmudgett1-68/+75
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@224930 f38db490-d61c-443f-a65b-d21fe96a405b
2009-10-19Add a callback to sig_pri which is called when sig_pri is going to queue a ↵file1-0/+4
control frame on a channel. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@224491 f38db490-d61c-443f-a65b-d21fe96a405b
2009-10-17Merged revisions 224330 via svnmerge from jpeeler1-0/+2
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r224330 | jpeeler | 2009-10-16 20:32:47 -0500 (Fri, 16 Oct 2009) | 13 lines Fix stale caller id data from being reported in AMI NewChannel event The problem here is that chan_dahdi is designed in such a way to set certain values in the dahdi_pvt only once. One of those such values is the configured caller id data in chan_dahdi.conf. For PRI, the configured caller id data could be overwritten during a call. Instead of saving the data and restoring, it was decided that for all non-analog channels it was simply best to not set the configured caller id in the first place and also clear it at the end of the call. (closes issue #15883) Reported by: jsmith ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@224331 f38db490-d61c-443f-a65b-d21fe96a405b
2009-10-16Merged revisions 224260 via svnmerge from rmudgett1-4/+12
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r224260 | rmudgett | 2009-10-16 15:25:23 -0500 (Fri, 16 Oct 2009) | 18 lines Never released PRI channels when using Busy() or Congestion() dialplan apps. When the Busy() or Congestion() application is used towards ISDN (an ISDN progress is sent), the responding ISDN Disconnect or Release may contain the ISDN cause user busy or one of the congestion causes. In chan_dahdi.c these causes will only set the needbusy or needcongestion flags and not activate the softhangup procedure. Unfortunately only the latter can interrupt the endless wait loop of Busy()/Congestion(). Result: PRI channels staying in state busy for the rest of asterisk life or until the other end times out and forces the call to clear. (issue #14292) Reported by: tomaso Patches: disc_rel_userbusy.patch uploaded by tomaso (license 564) (This patch is unrelated to the issue.) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@224261 f38db490-d61c-443f-a65b-d21fe96a405b
2009-09-28Miscellaneous minor changes.rmudgett1-1/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@220792 f38db490-d61c-443f-a65b-d21fe96a405b
2009-09-28Locking issues dealing with service_lock.rmudgett1-15/+10
* Removed unneeded and uninitialized service_lock. * Fixed potential locking imbalance in pri_dchannel():PRI_EVENT_RESTART. * Fixed verbose message typo in pri_dchannel():PRI_EVENT_RESTART. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@220672 f38db490-d61c-443f-a65b-d21fe96a405b
2009-09-25Reduce indentation in sig_pri_available().rmudgett1-18/+16
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@220543 f38db490-d61c-443f-a65b-d21fe96a405b
2009-09-10Cleanup approach in 217804 and don't reach inside the sig_pvt.jpeeler1-0/+7
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@217987 f38db490-d61c-443f-a65b-d21fe96a405b
2009-09-08Fix memory leak of sig_xxx private structures.rmudgett1-0/+13
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@217332 f38db490-d61c-443f-a65b-d21fe96a405b
2009-09-08Remove duplicate entry in the sig_pri_pri private pointer array.rmudgett1-2/+0
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@217236 f38db490-d61c-443f-a65b-d21fe96a405b
2009-09-03Lets try not to use C++ keywords for variable names.rmudgett1-14/+16
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@216186 f38db490-d61c-443f-a65b-d21fe96a405b
2009-09-02Made chan_dahdi able to ignore incoming calls that are not in a MSN list for ↵rmudgett1-0/+42
ISDN PTMP CPE spans. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@215757 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-28Move discardremoteholdretrieval test so it applies only to the specific ↵rmudgett1-7/+13
notification indicator values. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@214654 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-21Update configure script for libpri COLP feature dependency requirements.rmudgett1-6/+3
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@213748 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-18Add COLP support to chan_dahdi/sig_pri.rmudgett1-60/+543
Add Connected Line Presentation (COLP) support to chan_dahdi/libpri as an addition to issue 8824. This is the chan_dahdi/sig_pri portion. COLP support is now available for any switch for which libpri supports COLP (currently ETSI PTP, ETSI PTMP, and Q.SIG) with this patch. (closes issue #14068) Tested by: rmudgett Review: https://reviewboard.asterisk.org/r/340/ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@213007 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-10AST-2009-005tilghman1-4/+4
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@211539 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-10Fix PRI/BRI channels when in alarm condition to only be marked for hangup if jpeeler1-5/+4
T309 is not enabled. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@211435 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-10Restoring some code to sig_pri. Not sure if it is really needed.rmudgett1-0/+19
Putting some DSP code back into sig_pri that was removed by the chan_dahdi/sig_pri reorganization. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@211392 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-07Fix static on line when PRI does overlap dialing.rmudgett1-2/+10
The wrong encoding law was used because = was used when it should have been ==. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@211191 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-06Sanity adjustments to pri_ss_thread for sig_pri environment.rmudgett1-2/+7
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@210866 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-05Fix potential deadlock issue with USERUSERINFO channel variable.rmudgett1-33/+87
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@210732 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-05More changes from chan_dahdi that did not make it into sig_pri.rmudgett1-9/+15
* Q.SIG channel mapping option. * discardremoteholdretrieval option. * libPRI debug defines. * pri_set_overlapdial() now set correctly. * pthread creation of pri_ss_thread now matches. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@210696 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-05Merged revisions 210575 via svnmerge from rmudgett1-38/+41
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r210575 | rmudgett | 2009-08-05 14:18:56 -0500 (Wed, 05 Aug 2009) | 14 lines Dialplan starts execution before the channel setup is complete. * Issue 15655: For the case where dialing is complete for an incoming call, dahdi_new() was asked to start the PBX and then the code set more channel variables. If the dialplan hungup before these channel variables got set, asterisk would likely crash. * Fixed potential for overlap incoming call to erroneously set channel variables as global dialplan variables if the ast_channel structure failed to get allocated. * Added missing set of CALLINGSUBADDR in the dialing is complete case. (closes issue #15655) Reported by: alecdavis ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@210640 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-04Fix CALLERID() values for sig_pri on incoming calls.rmudgett1-25/+102
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@210387 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-03Changes from chan_dahdi that did not make it into sig_pri.rmudgett1-90/+101
* Moved SUPPORT_USERUSER to sig_pri.c * Fix PRI_DEADLOCK_AVOIDANCE parameter. * Whitespace changes. * Added missing unlock in pri_dchannel():PRI_EVENT_RING case. * Balanced curly braces. * ast_debug/ast_log changes from chan_dahdi. * sig_pri_indicate() should default to return -1 if the indication is not handled. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@210154 f38db490-d61c-443f-a65b-d21fe96a405b
2009-08-03Trim trailing whitespace.rmudgett1-72/+72
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@210094 f38db490-d61c-443f-a65b-d21fe96a405b
2009-07-30Add missing ifdef-s for service maintenance message functionalityjpeeler1-0/+2
(closes issue #15614) Reported by: fabled git-svn-id: http://svn.digium.com/svn/asterisk/trunk@209619 f38db490-d61c-443f-a65b-d21fe96a405b
2009-07-23Fix sending of interface identifier unconditionally in sig_prijpeeler1-11/+10
The wrong logic was being used in chan_dahdi to convert a sig_pri_chan to the proper libpri channel number. The most significant bit must only be set only when trunk groups are being used. (closes issue #15452) Reported by: alecdavis Patches: bug15452.patch uploaded by jpeeler (license 325) Tested by: alecdavis git-svn-id: http://svn.digium.com/svn/asterisk/trunk@208267 f38db490-d61c-443f-a65b-d21fe96a405b
2009-07-21Do not dial digits when none were specified for sig_pri based callsjpeeler1-3/+4
(closes issue #15524) Reported by: elguero Patches: pri-sig-no-dest-set.patch uploaded by elguero (license 37) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@207950 f38db490-d61c-443f-a65b-d21fe96a405b
2009-07-15The dialing flag was mistakingly removed from sig_pri.jpeeler1-0/+13
This readds the proper setting of the flag and is really a continuation of r205731. The flag was being set properly in sig_analog, but use of the newly added set_dialing callback allowed for some simplification in chan_dahdi. (closes issue #15486) Reported by: rmudgett git-svn-id: http://svn.digium.com/svn/asterisk/trunk@206767 f38db490-d61c-443f-a65b-d21fe96a405b
2009-07-03Add a configure check for Reverse Charging Indication support in LibPRI.seanbright1-1/+5
Also go back and wrap all of the places that use the specific reverse charge APIs with preprocessor conditionals. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@204919 f38db490-d61c-443f-a65b-d21fe96a405b
2009-07-02Support setting and receiving Reverse Charging Indication over ISDN PRI.seanbright1-2/+9
This is a continuation of revision 885 to LibPRI (Capture and expose the Reverse Charging Indication IE on ISDN PRI) which added the ability to get/set Reverse Charging Indication in LibPRI. This patch adds the ability to specify RCI on the outbound leg of a PRI call from within Asterisk, by prefixing the dialed number with a capital 'C' like: ...,Dial(DAHDI/g1/C4445556666) And to read it off an inbound channel: exten => s,1,Set(RCI=${CHANNEL(reversecharge)}) Thanks again to rmudgett for the thorough review. (closes issue #13760) Reported by: mrgabu Review: https://reviewboard.asterisk.org/r/303/ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@204749 f38db490-d61c-443f-a65b-d21fe96a405b
2009-06-27Merged revisions 203908 via svnmerge from rmudgett1-8/+5
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r203908 | rmudgett | 2009-06-26 19:55:12 -0500 (Fri, 26 Jun 2009) | 16 lines The ISDN CPE side should not exclusively pick B channels normally. Before this patch, Asterisk unconditionally picked B channels exclusively on the CPE side and normally allowed alternative B channels on the network side. Now Asterisk does the opposite. Reasons for the CPE side to normally not pick B channels exclusively: * For CPE point-to-multipoint mode (i.e. phone side), the CPE side does not have enough information to exclusively pick B channels. (There may be other devices on the line.) * Q.931 gives preference to the network side picking B channels. * Some telcos require the CPE side to not pick B channels exclusively. (closes issue #14383) Reported by: mbrancaleoni ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@203909 f38db490-d61c-443f-a65b-d21fe96a405b
2009-06-26Merge the new Channel Event Logging (CEL) subsystem.russell1-7/+7
CEL is the new system for logging channel events. This was inspired after facing many problems trying to represent what is possible to happen to a call in Asterisk using CDR records. For more information on CEL, see the built in HTML or PDF documentation generated from the files in doc/tex/. Many thanks to Steve Murphy (murf) and Brian Degenhardt (bmd) for their hard work developing this code. Also, thanks to Matt Nicholson (mnicholson) and Sean Bright (seanbright) for their assistance in the final push to get this code ready for Asterisk trunk. Review: https://reviewboard.asterisk.org/r/239/ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@203638 f38db490-d61c-443f-a65b-d21fe96a405b
2009-06-25New signaling module to handle PRI/BRI operations in chan_dahdijpeeler1-0/+2455
This merge splits the PRI/BRI signaling logic out of chan_dahdi.c into sig_pri.c. Functionality in theory should not change (mostly). A few trivial changes were made in sig_analog with verbose messages and commenting. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@203304 f38db490-d61c-443f-a65b-d21fe96a405b