Commit Graph

69 Commits

Author SHA1 Message Date
Tilghman Lesher
5cf26dcdac Implicitly sending a progress signal breaks some applications.
Call Progress() in your dialplan if you explicitly want progress to be sent.
(Reverts change 216430, closes issue #15957)
Reported by: Pavel Troller on the Asterisk-Dev mailing list
http://lists.digium.com/pipermail/asterisk-dev/2009-September/039897.html


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@220288 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-24 19:39:41 +00:00
Olle Johansson
05899c19a1 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.4@216430 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-04 13:45:48 +00:00
Tilghman Lesher
63cc189747 AST-2009-005
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@211528 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-10 19:15:57 +00:00
Russell Bryant
9161b7fc87 Revert unnecessary indications API change from rev 122314
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@168561 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-01-13 19:13:05 +00:00
Russell Bryant
97bb6d4c65 Allow DISA to handle extensions that start with #.
(closes issue #13330)
Reported by: jcovert


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@162014 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-09 16:46:53 +00:00
Jeff Peeler
f9818af8dd Adds DAHDI support alongside Zaptel. DAHDI usage favored, but all Zap stuff should continue working. Release announcement to follow.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@122314 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-12 19:08:20 +00:00
Jason Parker
f1467addf7 If # is pressed after dialing an extension in DISA, stop trying to collect more digits.
(issue #10754)
Reported by: atis
Patches:
      app_disa.c.branch.patch uploaded by atis (license 242)
      app_disa.c.trunk.patch uploaded by atis (license 242)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83246 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-20 17:09:14 +00:00
Kevin P. Fleming
0a27d8bfe5 merge new_loader_completion branch, including (at least):
- restructured build tree and makefiles to eliminate recursion problems
  - support for embedded modules
  - support for static builds
  - simpler cross-compilation support
  - simpler module/loader interface (no exported symbols)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 02:11:39 +00:00
North Antara
2da3b12c51 case consistency in DISA (or is it "disa"?)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37682 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-15 21:56:58 +00:00
Kevin P. Fleming
472c1ca282 simplify autoconfig include mechanism (make tholo happy he can use lint again :-)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-07 18:54:56 +00:00
Kevin P. Fleming
18606233da fix various typos and other bits (from Ian Kinner)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@30800 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-30 16:01:50 +00:00
Russell Bryant
04ecb29d03 remove almost all of the checks of the result from ast_strdupa() or alloca().
As it turns out, all of these checks were useless, because alloca will never
return NULL.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26451 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-10 13:22:15 +00:00
Luigi Rizzo
e43bc6634d This rather large commit changes the way modules are loaded.
As partly documented in loader.c and include/asterisk/module.h,
modules are now expected to return all of their methods and flags
into a structure 'mod_data', and are normally loaded with RTLD_NOW
| RTLD_LOCAL, so symbols are resolved immediately and conflicts
should be less likely.  Only in a small number of cases (res_*,
typically) modules are loaded RTLD_GLOBAL, so they can export
symbols.
 
The core of the change is only the two files loader.c and
include/asterisk/module.h, all the rest is simply adaptation of the
existing modules to the new API, a rather mechanical (but believe
me, time and finger-consuming!) process whose detail you can figure
out by svn diff'ing any single module.

Expect some minor compilation issue after this change, please
report it on mantis http://bugs.digium.com/view.php?id=6968
so we collect all the feedback in one place.

I am just sorry that this change missed SVN version number 20000!



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@20003 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-14 14:08:19 +00:00
Kevin P. Fleming
f10f427d49 since the module API is changing, it's a good time to const-ify the description() and key() return values
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-08 22:01:19 +00:00
Russell Bryant
a0d438fb6c remove the uses of the deprecated STANDARD_LOCAL_USER
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@10241 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-15 20:11:56 +00:00
Kevin P. Fleming
a16ae226b6 use string fields for some stuff in ast_channel
const-ify some more APIs
remove 'type' field from ast_channel, in favor of the one in the channel's tech structure
allow string field module users to specify the 'chunk size' for pool allocations
update chan_alsa to be compatible with recent const-ification patches


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@9060 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-01 23:05:28 +00:00
Russell Bryant
4414f45393 on this pass, only remove duplicate log messages
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8403 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21 20:57:06 +00:00
Russell Bryant
9fa6eb5e07 revert my pass through the tree to remove checks of the result of ast_strdupa
(revisions 8378 through 8381)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21 17:50:04 +00:00
Russell Bryant
7ad681adc8 remove lots of useless checks of the result of ast_strdupa
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21 08:13:12 +00:00
Jim Dixon
80c19330ff Added NOANSWER support, so that optional the DISA application starts without
answering (used in new version of app_rpt, and potentially other applicaitons).


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8105 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-16 18:52:13 +00:00
Olle Johansson
a5dcd29a2e Whitespace and formatting changes. /Housekeeping
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7784 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-04 13:49:25 +00:00
Kevin P. Fleming
2c65582b66 remove extraneous svn:executable properties
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-29 18:24:39 +00:00
Kevin P. Fleming
a14758518d correct a small problem with recent commit
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7103 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-15 19:40:08 +00:00
Kevin P. Fleming
6bfdf6f45a issue #5736
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7101 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-15 19:27:18 +00:00
Kevin P. Fleming
5545974c6a issue #5676
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-11 00:53:19 +00:00
Kevin P. Fleming
f09c6bc78e application doc update
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6992 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-07 22:01:22 +00:00
Russell Bryant
e8f2ad304a user correct arguments to ast_cdr_reset from my changes earlier today
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6990 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-07 04:10:41 +00:00
Russell Bryant
31a804b97c issue #5605
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6979 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-06 15:09:47 +00:00
Russell Bryant
7deac2300a strncpy to ast_copy_string
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6868 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-27 02:48:56 +00:00
Russell Bryant
5187de9ab6 remove unnecessary checks before calls to ast_strlen_zero
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-26 19:48:14 +00:00
Russell Bryant
3453e3efa5 Doxygen documentation update from oej (issue #5505)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6847 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-24 20:12:06 +00:00
Mark Spencer
60e9a6edf7 Fix app_disa to set the proper variable before goign to invalid (bug #5439)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6845 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-23 01:39:40 +00:00
Mark Spencer
e973e76c9f Fix DISA documentation (bug #5461)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6837 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-21 04:00:13 +00:00
Russell Bryant
4aa7912057 Massive cleanups to applications for LOCAL_USER handling and some other things.
In general, LOCAL_USER_ADD/REMOVE should be the first/last thing called in an
application.  An exception is if there is some *fast* setup code that might
halt the execution of the application, such as checking to see if an argument
exists.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-19 18:19:02 +00:00
Russell Bryant
29829640bf it's a good idea to unregister everything before calling STANDARD_HANGUP_LOCALUSERS
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6828 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-18 22:52:21 +00:00
Kevin P. Fleming
81932c6142 make DISA() use 'i' extension if it exists (issue #5439 with mods)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6779 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-13 23:52:42 +00:00
Kevin P. Fleming
5da915dcfd update MANY more files with proper copyright/license info (thanks Ian!)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-14 20:46:50 +00:00
Kevin P. Fleming
e0f02b46f1 convert a bunch of apps to use ast_goto_if_exists() (issue #5138)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6533 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-07 19:13:00 +00:00
Kevin P. Fleming
63b6795055 ensure account code is not overwritten when none is supplied (bug #4743)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6168 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-19 23:45:21 +00:00
Kevin P. Fleming
22b0f5d306 add a library of timeval manipulation functions, and change a large number of usses to use the new functions (bug #4504)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6146 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-15 23:00:47 +00:00
Kevin P. Fleming
608eec66d6 ensure that mailbox numbers are read correctly from password files (bug #4655)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6049 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-07 22:42:06 +00:00
Kevin P. Fleming
c0b1e88e8a the last round of file version tags
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5867 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-06 22:39:32 +00:00
Kevin P. Fleming
8634ef9e4a don't use '%i' at all, since we have no current use cases that need non base-10 parsing (bug #4110)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5533 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-29 17:00:33 +00:00
Kevin P. Fleming
1f9ab2380a use double-quotes instead of angle-brackets for non-system include files (bug #4058)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5490 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-21 06:02:45 +00:00
Mark Spencer
e8a453e89d Fix timeouts when no-password used (bug #3859)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5264 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-26 07:08:47 +00:00
Russell Bryant
0c30452423 update copyright headers for 2005
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4868 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-21 07:06:25 +00:00
Mark Spencer
e58083c1f9 DISA fix, makefile fix (bug #3049)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4461 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-15 20:29:31 +00:00
Mark Spencer
77b39af6bf Fix DISA with callerid (bug #3058)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4460 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-15 20:20:58 +00:00
Mark Spencer
5d92e20876 Minor disa fix for 3.4
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4452 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-15 15:40:29 +00:00
Jim Dixon
998621f76a Fixed call parking, added separate paramater to allow/disallow call parking on
Zaptel interfaces (canpark=yes/no in zapata.conf), added urlbase paramater to
Monitor so that a url can optionally be included in CDR (user field), cleaned up a couple of minor things


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4413 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-09 22:39:14 +00:00