]> git.ipfire.org Git - thirdparty/asterisk.git/commit
Merged revisions 216438 via svnmerge from
authorOlle Johansson <oej@edvina.net>
Mon, 7 Sep 2009 10:29:15 +0000 (10:29 +0000)
committerOlle Johansson <oej@edvina.net>
Mon, 7 Sep 2009 10:29:15 +0000 (10:29 +0000)
commit9ecf61f22cb6079b00d2f305c1c446c7149c30b0
treea48a2e96227047defbb6bde22ca31162f4a19def
parente9deb101a52560d85ca939cb6a3b3e54435888c4
Merged revisions 216438 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r216438 | oej | 2009-09-04 16:02:34 +0200 (Fre, 04 Sep 2009) | 35 lines

Merged revisions 216430 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r216430 | oej | 2009-09-04 15:45:48 +0200 (Fre, 04 Sep 2009) | 27 lines

Make apps send PROGRESS control frame for early media and fix too early media issue in SIP

The issue at hand is that some legacy (dying) PBX systems send empty media frames on PRI
links *before* any call progress. The SIP channel receives these frames and by default
signals 183 Session progress and starts sending media. This will cause phones to
play silence and ignore the later 180 ringing message. A bad user experience.

The fix is twofold:
- We discovered that asterisk apps that support early media ("noanswer") did not send
  any PROGRESS frame to indicate early media. Fixed.
- We introduce a setting in chan_sip so that users can disable any relay of media frames
  before the outbound channel actually indicates any sort of call progress.
  In 1.4, 1.6.0 and 1.6.1, this will be disabled for backward compatibility. In later versions
  of Asterisk, this will be enabled. We don't assume that it will change your Asterisk
  phone experience - only for the better.

We encourage third-party application developers to make sure that if they have applications
that wants to send early media, add a PROGRESS control frame transmission to make sure that
all channel drivers actually will start sending early media. This has not been the default
in Asterisk previous to this patch, so if you got inspiration from our code, you need to
update accordingly. Sorry for the trouble and thanks for your support.

This code has been running for a few months in a large scale installation (over 250
servers with PRI and/or BRI links to old PBX systems).
That's no proof that this is an excellent patch, but, well, it's tested :-)

........

................

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@216645 65c4cc65-6c06-0410-ace0-fbb531ad65f3
apps/app_disa.c
apps/app_playback.c
channels/chan_sip.c
configs/sip.conf.sample
main/pbx.c