chan_pjsip: Add "rpid_immediate" option to prevent unnecessary "180 Ringing" messages.
authorRichard Mudgett <rmudgett@digium.com>
Tue, 24 Mar 2015 19:41:36 +0000 (19:41 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Tue, 24 Mar 2015 19:41:36 +0000 (19:41 +0000)
commit4c2fc5b81103f7942277bf3dd6481742500ddb2d
tree5049be51e380fb66367d0efe47fed02c71642940
parent60f01520e74c7c043e506dfb65c787148205fa93
chan_pjsip: Add "rpid_immediate" option to prevent unnecessary "180 Ringing" messages.

Incoming PJSIP call legs that have not been answered yet send unnecessary
"180 Ringing" or "183 Progress" messages every time a connected line
update happens.  If the outgoing channel is also PJSIP then the incoming
channel will always send a "180 Ringing" or "183 Progress" message when
the outgoing channel sends the INVITE.

Consequences of these unnecessary messages:

* The caller can start hearing ringback before the far end even gets the
call.

* Many phones tend to grab the first connected line information and refuse
to update the display if it changes.  The first information is not likely
to be correct if the call goes to an endpoint not under the control of the
first Asterisk box.

When connected line first went into Asterisk in v1.8, chan_sip received an
undocumented option "rpid_immediate" that defaults to disabled.  When
enabled, the option immediately passes connected line update information
to the caller in "180 Ringing" or "183 Progress" messages as described
above.

* Added "rpid_immediate" option to prevent unnecessary "180 Ringing" or
"183 Progress" messages.  The default is "no" to disable sending the
unnecessary messages.

ASTERISK-24781 #close
Reported by: Richard Mudgett

Review: https://reviewboard.asterisk.org/r/4473/
........

Merged revisions 433338 from http://svn.asterisk.org/svn/asterisk/branches/13

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@433339 65c4cc65-6c06-0410-ace0-fbb531ad65f3
CHANGES
channels/chan_pjsip.c
configs/samples/pjsip.conf.sample
include/asterisk/res_pjsip.h
res/res_pjsip.c
res/res_pjsip/pjsip_configuration.c