Commit Graph

60 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
ca0f026f41 Reverting index() fix, applying a different methodology, based upon developer discussions.
(related to issue #15639)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@210066 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-03 16:11:29 +00:00
Tilghman Lesher
5955dbc3c1 Ensure that help text terminates with a newline
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@114299 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-19 13:57:17 +00:00
Steve Murphy
8a02ac6f79 These small documentation updates made in response to a query in
asterisk-users, where a user was using Playback, but needed the
features of Background, and had no idea that Background existed,
or that it might provide the features he needed. I thought the
best way to avert these kinds of queries was to provide "See Also"
references in all three of "Background", "Playback", "WaitExten".
Perhaps a project to do this with all related apps is in order.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@111391 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-27 13:03:28 +00:00
Mark Michelson
7166081028 After issuing a "say load new", if a caller hangs up during the middle of playback of a number,
app_playback will continue to try to play the remaining files. With this change, no more files will
be played back upon hangup.

(closes issue #11345, reported and patched by IgorG)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@89618 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-26 23:10:49 +00:00
Mark Michelson
f669a1c661 After issuing a "say load new" tons of warning messages are printed
out to the CLI every time do_say in app_playback is called. Removing these
warnings



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@89616 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-26 23:02:30 +00:00
Joshua Colp
670a0ff144 Directly load say.conf in load_module instead of calling the reload function. (issue #8946 reported by junky)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@53399 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-07 17:04:44 +00:00
Joshua Colp
687b672a09 Ensure say_cfg is NULL when the module is loaded. (issue #8946 reported by junky)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@53152 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-05 17:06:18 +00:00
Joshua Colp
e647794710 Unregister Playback CLI commands as well as dialplan application. (issue #8946 reported by junky)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@53150 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-05 16:02:00 +00:00
Joshua Colp
c1f12bd5ad Move say.conf existence check to do_say function since it is called from multiple places (issue #8144 reported by kshumard)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@45051 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-13 16:20:58 +00:00
Joshua Colp
d2d4833b79 Put in missing \ns on the end of ast_logs (issue #7936 reported by wojtekka)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@43933 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-28 18:05:43 +00:00
Jason Parker
482c18499e Fix an issue with PLAYBACKSTATUS not being set under certain circumstances.
Fix a minor issue, to make it use the filenames that were parsed, instead of the entire argument string.
Fix Background() to return -1 like Playback(), if no args are specified.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@43803 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-27 19:44:02 +00:00
Kevin P. Fleming
fcb999c01c merge qwell's CLI verbification work
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43212 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 19:54:18 +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
Russell Bryant
883d0f7a05 destroy the loaded say.conf on module unload
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@33786 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-13 04:40:15 +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
Luigi Rizzo
23233bb115 remove an explicit constant;
add a comment on the need to sort patterns in the standard way.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@30700 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-29 05:14:52 +00:00
Luigi Rizzo
698cead822 support reload say.conf to ease testing
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26529 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-10 15:38:54 +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
d93234c25b add experimental code for new-style "say" application.
The rules for spelling out numbers and dates are in the config
file "say.conf", which can be edited to implement national
or even local language rules.

The new code can be enabled through the cli command
'say load new'
while the old code can be restored with
'say load old'

Eventually, this code should go to a better place,
but for the time being we keep here as it provides
very similar functions.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@21421 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-19 10:27:31 +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
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
Mark Spencer
50ab29b64b Merge playback cleanups (bug #6163)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-08 00:08:49 +00:00
Russell Bryant
a725468381 update doxygen docs to specify authors
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7682 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-30 21:18:06 +00:00
Russell Bryant
ec05153ac4 convert most of the option_*'s to a single ast_flags structure. Also, fix some
formatting, remove some unnecessary casts, and other little code cleanups.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7331 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-04 20:40:46 +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
a45b2019df issue #5752
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7102 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-15 19:33:15 +00:00
Russell Bryant
987b87662c make app_queue 1.2 jump compliant (issue #5580)
add missing includes of stdio.h
remove some unused and duplicate headers


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7026 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-08 04:48:00 +00:00
Kevin P. Fleming
24cc108694 issue #5640 with minor mods
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6999 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-07 23:10:02 +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
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
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
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
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
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
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
d18b2f29bf Allow playback for multiple files (bug #3749)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5157 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-10 07:47:02 +00:00
Mark Spencer
db58aec4f3 Add n+101 jump if file does not exist (bug #2722)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4099 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-26 02:25:50 +00:00
Mark Spencer
5808760bf4 Fix signalling for GR303 FXSKS CPE so we can look like a concentrator
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3476 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-07-19 02:18:11 +00:00
James Golovich
f5c18f62a1 Remove pthread.h from source. We should be using asterisk/lock.h everywhere instead (except in asterisk/lock.h).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3277 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-22 19:32:52 +00:00
James Golovich
8ef3b1544b More ast_strlen_zero changes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2930 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-05-09 07:51:44 +00:00
Mark Spencer
4fc8108a2b Version 0.3.0 from FTP
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@546 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2002-11-11 16:37:01 +00:00