summaryrefslogtreecommitdiff
path: root/res/res_pjsip.c
diff options
context:
space:
mode:
authorJoshua Colp <jcolp@digium.com>2013-11-28 00:38:36 +0000
committerJoshua Colp <jcolp@digium.com>2013-11-28 00:38:36 +0000
commita64cd7c6bbd8bc54dd68cb54447dabd37bfe2437 (patch)
treee9f46c79cf1df3ea63fcbdbb3e036b6b1f19d61a /res/res_pjsip.c
parent48c2b40ff3bbdd9b00012f6d62775bd104a82604 (diff)
res_pjsip_session: Add configurable behavior for redirects.
The action taken when a redirect occurs is now configurable on a per-endpoint basis. The redirect can either be treated as a redirect to a local extension, to a URI that is dialed through the Asterisk core, or to a URI that is dialed within PJSIP itself. (closes issue ASTERISK-21710) Reported by: Matt Jordan Review: https://reviewboard.asterisk.org/r/2963/ ........ Merged revisions 403207 from http://svn.asterisk.org/svn/asterisk/branches/12 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@403208 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'res/res_pjsip.c')
-rw-r--r--res/res_pjsip.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/res/res_pjsip.c b/res/res_pjsip.c
index db4f32f2c..37762e6cf 100644
--- a/res/res_pjsip.c
+++ b/res/res_pjsip.c
@@ -244,6 +244,27 @@
</enumlist>
</description>
</configOption>
+ <configOption name="redirect_method">
+ <synopsis>How redirects received from an endpoint are handled</synopsis>
+ <description><para>
+ When a redirect is received from an endpoint there are multiple ways it can be handled.
+ If this option is set to <literal>user</literal> the user portion of the redirect target
+ is treated as an extension within the dialplan and dialed using a Local channel. If this option
+ is set to <literal>uri_core</literal> the target URI is returned to the dialing application
+ which dials it using the PJSIP channel driver and endpoint originally used. If this option is
+ set to <literal>uri_pjsip</literal> the redirect occurs within chan_pjsip itself and is not exposed
+ to the core at all. The <literal>uri_pjsip</literal> option has the benefit of being more efficient
+ and also supporting multiple potential redirect targets. The con is that since redirection occurs
+ within chan_pjsip redirecting information is not forwarded and redirection can not be
+ prevented.
+ </para>
+ <enumlist>
+ <enum name="user" />
+ <enum name="uri_core" />
+ <enum name="uri_pjsip" />
+ </enumlist>
+ </description>
+ </configOption>
<configOption name="mailboxes">
<synopsis>Mailbox(es) to be associated with</synopsis>
</configOption>