asterisk/channels
kkm 4b58609c33 chan_sip: Access incoming REFER headers in dialplan
This adds a way to access information passed along with SIP headers in
a REFER message that initiates a transfer. Headers matching a dialplan
variable GET_TRANSFERRER_DATA in the transferrer channel are added to
a HASH object TRANSFER_DATA to be accessed with functions HASHKEY and HASH.

The variable GET_TRANSFERRER_DATA is interpreted to be a prefix for
headers that should be put into the hash. If not set, no headers are
included. If set to a string (perhaps 'X-' in a typical case), all headers
starting this string are added. Empty string matches all headers.

If there are multiple of the same header, only the latest occurrence in
the REFER message is available in the hash.

Obviously, the variable GET_TRANSFERRER_DATA must be inherited by the
referrer channel, and should be set with the '_' or '__' prefix.

I avoided a specific reference to SIP or REFER, as in my mind the mechanism
can be generalized to other channel techs.

ASTERISK-27162

Change-Id: I73d7a1e95981693bc59aa0d5093c074b555f708e
2017-08-07 11:17:39 +00:00
..
dahdi Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
iax2 Fix compiler warnings on Fedora 26 / GCC 7. 2017-08-01 15:42:38 -06:00
misdn Makefile: Remove coverage files on 'make clean' 2015-07-04 07:47:06 -05:00
pjsip chan_pjsip: add a new function PJSIP_DTMF_MODE 2017-08-01 15:41:53 -06:00
sip Correct some leaks in unit tests. 2017-08-03 22:09:28 -04:00
chan_alsa.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
chan_bridge_media.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
chan_console.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
chan_dahdi.c core: Remove 'Data Retrieval API' 2017-07-05 11:25:58 -05:00
chan_dahdi.h chan_dahdi: Add faxdetect_timeout option. 2016-07-19 10:33:45 -05:00
chan_iax2.c Fix compiler warnings on Fedora 26 / GCC 7. 2017-08-01 15:42:38 -06:00
chan_mgcp.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
chan_misdn.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
chan_motif.c Fix compiler warnings on Fedora 26 / GCC 7. 2017-08-01 15:42:38 -06:00
chan_nbs.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
chan_oss.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
chan_phone.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
chan_phone.h rename DialTone.h to chan_phone.h because chan_phone.c is the only file using it 2008-05-28 20:00:21 +00:00
chan_pjsip.c chan_pjsip: add a new function PJSIP_DTMF_MODE 2017-08-01 15:41:53 -06:00
chan_rtp.c chan_rtp.c: Fix uninitialized memory crash. 2016-12-22 12:25:15 -06:00
chan_sip.c chan_sip: Access incoming REFER headers in dialplan 2017-08-07 11:17:39 +00:00
chan_skinny.c AST-2017-004: chan_skinny: Add EOF check in skinny_session 2017-05-19 11:19:09 -05:00
chan_unistim.c Fix compiler warnings on Fedora 26 / GCC 7. 2017-08-01 15:42:38 -06:00
chan_vpb.cc chan_vpb.cc: Fix compile error. 2017-04-27 19:08:05 -05:00
console_board.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
console_gui.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
console_video.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
console_video.h implement the 'freeze' function for incoming frames; 2008-06-30 15:45:15 +00:00
Makefile Fix compile error for old versions of GCC. 2017-08-02 18:10:57 -04:00
misdn_config.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
sig_analog.c build_system: Fix some warnings highlighted by clang 2016-02-01 19:22:40 -06:00
sig_analog.h chan_dahdi/sig_analog: Fix distinctive ring detection to suck less. 2015-03-06 20:24:58 +00:00
sig_pri.c build: GCC 5.1.x catches some new const, array bounds and missing paren issues 2015-10-24 16:08:54 -05:00
sig_pri.h sig_pri.h: force_restart_unavailable_chans in wrong scope 2015-07-17 11:02:24 -05:00
sig_ss7.c Logger: Convert 'struct ast_callid' to unsigned int. 2015-03-13 01:12:35 +00:00
sig_ss7.h chan_dahdi: Adds support for major update to libss7. 2014-06-16 18:27:51 +00:00
vcodecs.c Fix printf problems with high ascii characters after r413586 (1.8). 2014-12-17 10:23:32 +00:00
vgrabbers.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00