Commit graph

168 commits

Author SHA1 Message Date
Tilghman Lesher
4aff884622 Pass the Asterisk version to AGI scripts as part of the initial dump of info
Reported by: acunningham
Patch by: acunningham
(Closes issue #11398)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90851 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-04 15:01:57 +00:00
Joshua Colp
8bfdea3160 Add AGI commands for speech recognition. These mirror the dialplan applications mostly but present the information in a nicer fashion. The SPEECH RECOGNIZE command for example will return the results instead of having to query the dialplan functions.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90656 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-03 21:03:05 +00:00
Joshua Colp
6aad89b97d Fix a few log messages.
(closes issue #11396)
Reported by: IgorG
Patches:
      spell.v1.diff uploaded by IgorG (license 20)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89981 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 15:38:03 +00:00
Luigi Rizzo
3fc2646808 remove a number of #include <fcntl.h> which are either
useless or done elsewhere



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89516 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-22 01:03:02 +00:00
Luigi Rizzo
e0ff5fef5c remove a bunch of useless #include "options.h"
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89511 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-21 23:09:02 +00:00
Luigi Rizzo
a23c055c3d move asterisk/paths.h outside asterisk.h and into those files
who really need it.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89466 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-20 23:16:15 +00:00
Luigi Rizzo
0595b5e2aa include "logger.h" and errno.h from asterisk.h - usage shows that they
were included almost everywhere.
Remove some of the instances.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89424 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-19 18:52:04 +00:00
Luigi Rizzo
a0f06d0dd5 start using asterisk/network.h for network related headers.
Also remove some unnecessary includes.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89380 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 14:11:53 +00:00
Luigi Rizzo
5490960453 remove a bunch of duplicate includes
Reproduce with

grep -r #include . | grep -v .svn | grep -v Binary | sort | uniq -c | sort -nr 



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89348 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 23:54:45 +00:00
Luigi Rizzo
fdb7f7ba3d Start untangling header inclusion in a way that does not affect
build times - tested, there is no measureable difference before and
after this commit.

In this change:

use asterisk/compat.h to include a small set of system headers:
inttypes.h, unistd.h, stddef.h, stddint.h, sys/types.h, stdarg.h,
stdlib.h, alloca.h, stdio.h

Where available, the inclusion is conditional on HAVE_FOO_H as determined
by autoconf.

Normally, source files should not include any of the above system headers,
and instead use either "asterisk.h" or "asterisk/compat.h" which does it
better. 

For the time being I have left alone second-level directories
(main/db1-ast, etc.).



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89333 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 20:04:58 +00:00
Kevin P. Fleming
edc78d6023 improve linked-list macros in two ways:
- the *_CURRENT macros no longer need the list head pointer argument
  - add AST_LIST_MOVE_CURRENT to encapsulate the remove/add operation when moving entries between lists


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89106 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-08 05:28:47 +00:00
Russell Bryant
4afb905cf0 Print out the channel name as a prefix to the "agi debug" output. This makes
AGI debugging on busy systems much easier.

(closes issue #10730)
Reported by: junky
Patches: 
      agi_debug_chan.diff uploaded by junky (license 177)
	  20070923_10730.diff uploaded by mvanbaak (license 7)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89074 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-07 00:00:38 +00:00
Steve Murphy
63f2f04cf4 This commits the performance mods that give the priority processing engine in the pbx, a 25-30% speed boost. The two updates used, are, first, to merge the ast_exists_extension() and the ast_spawn_extension() where they are called sequentially in a loop in the code, into a slightly upgraded version of ast_spawn_extension(), with a few extra args; and, second, I modified the substitute_variables_helper_full, so it zeroes out the byte after the evaluated string instead of demanding you pre-zero the buffer; I also went thru the code and removed the code that zeroed this buffer before every call to the substitute_variables_helper_full. The first fix provides about a 9% speedup, and the second the rest. These figures come from the 'PIPS' benchmark I describe in blogs, conf. reports, etc.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-01 22:26:51 +00:00
Jason Parker
ebe4050128 Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former didn't make much sense
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86820 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 20:05:18 +00:00
Jason Parker
b0f3e6097e Convert NEW_CLI to AST_CLI.
Closes issue #11039, as suggested by seanbright.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86536 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-19 18:29:40 +00:00
Russell Bryant
efaa9cf607 Merged revisions 84236 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r84236 | russell | 2007-10-01 14:56:28 -0500 (Mon, 01 Oct 2007) | 5 lines

Add another sanity check in the AGI read loop.  We really don't care about
EAGAIN unless we didn't read an entire line.  If there is a newline at the
end if the read buffer, break, because we got the whole thing.
(reported and patched by bmd)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@84237 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-01 19:58:29 +00:00
Russell Bryant
0de872da8d Merged revisions 82929 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82929 | russell | 2007-09-18 17:42:27 -0500 (Tue, 18 Sep 2007) | 11 lines

Add a new patch to handle interrupting the fgets() call when using FastAGI.
This version of the patch maintains the original behavior of the code when
not using FastAGI.
(closes issue #10553)
Reported by: juggie
Patches:
      res_agi_fgets-4.patch uploaded by juggie (license 24)
      res_agi_fgets_1.4svn.patch uploaded by juggie (license 24)
	  Slight mods by me
Tested by: juggie, festr

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82931 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-18 22:46:05 +00:00
Jason Parker
c7a9ec1691 (issue #10724)
Reported by: eliel
Patches:
      res_features.c.patch uploaded by eliel (license 64)
      res_agi.c.patch uploaded by seanbright (license 71)
      res_musiconhold.c.patch uploaded by seanbright (license 71)
      pbx.c.patch uploaded by moy (license 222)
      logger.c.patch uploaded by moy (license 222)
      frame.c.patch uploaded by moy (license 222)
      manager.c.patch uploaded by moy (license 222)
      http.c.patch uploaded by moy (license 222)
      dnsmgr.c.patch uploaded by moy (license 222)
      res_realtime.c.patch uploaded by eliel (license 64)
      res_odbc.c.patch uploaded by seanbright (license 71)
      res_jabber.c.patch uploaded by eliel (license 64)
      chan_local.c.patch uploaded by eliel (license 64)
      chan_agent.c.patch uploaded by eliel (license 64)
      chan_alsa.c.patch uploaded by eliel (license 64)
      chan_features.c.patch uploaded by eliel (license 64)
      chan_sip.c.patch uploaded by eliel (license 64)
      RollUp.1.patch (includes all of the above patches) uploaded by seanbright (license 71)

Convert many CLI commands to the NEW_CLI format.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82930 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-18 22:43:45 +00:00
Russell Bryant
a955df8eb9 Merged revisions 82296 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82296 | russell | 2007-09-12 16:56:32 -0500 (Wed, 12 Sep 2007) | 3 lines

Fix a check of the wrong pointer, as pointed out by an XXX comment left in 
the code.  The problem was harmless, however.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82297 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-12 21:57:30 +00:00
Russell Bryant
83e24e0af2 Merged revisions 82278 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82278 | russell | 2007-09-12 10:11:11 -0500 (Wed, 12 Sep 2007) | 3 lines

revert patch from issue #10553, as someone not using fastagi reported that this
broke their system.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82279 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-12 15:12:52 +00:00
Russell Bryant
b8ff60d307 Remove an unused variable. I have no idea why this was marked with the unused
attribute instead of just removing it.  :)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82247 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-11 15:31:04 +00:00
Russell Bryant
4eff19f413 Merged revisions 82245 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82245 | russell | 2007-09-11 10:26:51 -0500 (Tue, 11 Sep 2007) | 9 lines

(closes issue #10553)
Reported by: juggie
Patches:
      res_agi_fgets-2.patch uploaded by juggie (license 24)
Tested by: juggie

When using fastagi, fgets() can return before a full line is read.  Add explicit
handling for the case where it gets interrupted.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82246 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-11 15:28:46 +00:00
Joshua Colp
7cb698fb31 (closes issue #10684)
Reported by: junky
Patches:
      debug.diff uploaded by junky (license 177)
Fix issue with debug always showing up.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82076 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-10 13:41:54 +00:00
Russell Bryant
84643967e1 Merged revisions 80469 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80469 | russell | 2007-08-23 10:49:28 -0500 (Thu, 23 Aug 2007) | 2 lines

Revert res_agi fix that didn't quite work until we get it right ...

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80470 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-23 15:52:08 +00:00
Russell Bryant
44f70278a8 Merged revisions 80360 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80360 | russell | 2007-08-22 14:53:30 -0500 (Wed, 22 Aug 2007) | 5 lines

Juggie in #asterisk-dev was reporting problems where fgets would return
without reading  the whole line when using fastagi.  When this happens,
errno was set to EINTR or EAGAIN.  This patch accounts for the possibility
and lets fgets continue in that case.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80361 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 19:54:52 +00:00
Tilghman Lesher
a19b2fe6e3 Twould help if we actually defined ->mod before comparing against it (reported and fixed by Juggie via IRC).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77851 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-01 04:36:15 +00:00
Tilghman Lesher
20bbd09de3 Mostly cleanup of documentation to substitute the pipe with the comma, but a few other formatting cleanups, too.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77808 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-31 01:10:47 +00:00
Russell Bryant
048bb3d9e3 Fix the return value of ast_agi_fdprintf() to include the result from ast_carefulwrite()
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77792 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-30 19:39:52 +00:00
Russell Bryant
38bb9400de Improve ast_agi_fdprintf() by using the ast_str() API.
* Use a thread local ast_str for building the string that will be written out
   to the console for debug, and to the FD for the AGI itself, instead of allocating
   a buffer on the heap every time the function is called.
 * Use the information contained within the ast_str to determine how many bytes
   need to be written instead of calling strlen().


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77791 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-30 19:35:33 +00:00
Russell Bryant
935982d15b Merged revisions 77788 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r77788 | russell | 2007-07-30 14:13:31 -0500 (Mon, 30 Jul 2007) | 10 lines

(closes issue #10279)
Reported by: seanbright
Patches:
      res_agi.carefulwrite.1.4.07252007.patch uploaded by seanbright (license 71)
      res_agi.carefulwrite.trunk.07252007.patch uploaded by seanbright (license 71)

Allow the "agi_network: yes" line to be printed out in the AGI debug output.
Also, allow partial writes to be handled when writing out this line just like
it is for all of the others.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77789 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-30 19:18:24 +00:00
Tilghman Lesher
059a7aa862 Cleanup of res_agi, ensuring thread safety (closes issue #10288)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77787 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-30 19:11:28 +00:00
Tilghman Lesher
67bd05d9d1 Merged revisions 77783 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r77783 | tilghman | 2007-07-30 13:43:55 -0500 (Mon, 30 Jul 2007) | 10 lines

Merged revisions 77782 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r77782 | tilghman | 2007-07-30 13:40:54 -0500 (Mon, 30 Jul 2007) | 2 lines

Revert change in revision 71656, even though it fixed a bug, because many people were depending upon the (broken) behavior.

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77784 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-30 18:45:09 +00:00
Russell Bryant
f8483a0d04 Do a massive conversion for using the ast_verb() macro
(closes issue #10277, patches by mvanbaak)

Basically, this changes ...

if (option_verbose > 2)
   ast_verbose(VERBOSE_PREFIX_3, "Something\n");

to ...

ast_verb(3, "Something\n");


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77299 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-26 15:49:18 +00:00
Joshua Colp
3e9886598d You need to put static in front of a static RWLIST declaration to make it really static... and don't call AST_RWLIST_HEAD_DESTROY on a statically declared list.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76711 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 23:14:20 +00:00
Tilghman Lesher
db9d7764e0 Enhance AGI with several fixes:
- Makes the structures handling external AGI commands a bit more thread-safe
 - Makes AGI transparently work with both live and hungup channels
 - DeadAGI is hence no longer necessary and is deprecated
 - CLI bug fixes
 - Commands will refuse to run if the channel is dead and the command is nonsensical
   for dead channels.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76707 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 22:02:05 +00:00
Tilghman Lesher
a1fdc1c769 Missed one conversion to comma delimiter (thanks, Juggie) and add documentation on the
change to the Local channel name.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76704 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 20:27:26 +00:00
Russell Bryant
a971b4bfc4 (closes issue #10210, reported and patched by juggie)
This merges the trunk only part of the patches from this issue.  In 1.4, res_agi
will issue a warning if you try to use DeadAGI on a channel that is not hung up.
Now, in trunk, it just plain won't let you do it.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75930 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-19 15:59:19 +00:00
Russell Bryant
7743bed9f6 Merged revisions 75401 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r75401 | russell | 2007-07-17 14:45:07 -0500 (Tue, 17 Jul 2007) | 3 lines

Remove a duplicated newline character in AGI debug output.
(closes issue #10207, patch by seanbright)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75402 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-17 19:46:13 +00:00
Joshua Colp
96a646734f It is no longer required for each module that deals with a channel to call ast_module_user_hangup_all in it's unload function. The loader will automatically perform this action for it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75183 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-16 13:35:20 +00:00
Joshua Colp
48f166e87b Code cleanup of res_agi
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74713 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 21:09:42 +00:00
Russell Bryant
d2a85e5f64 After some discussion on the asterisk-dev list, we determined that this approach
for extracting application, function, manager, and agi documentation is the wrong
one to take.  The most severe problem is that the output depends on which modules
are loaded as well as compile time options, which both determine which parts are
available.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72986 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-02 23:02:16 +00:00
Russell Bryant
8d99a2004b Fix up the AGI doc dump CLI command and update the AGI commands tex file to not
include a bunch of empty entries.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72939 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-02 20:45:53 +00:00
Russell Bryant
93229b0fed Add a CLI command to export the AGI command docs
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72931 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-02 19:29:50 +00:00
Russell Bryant
625dbb6f89 Add a note that the AGI commands array is not handled in a thread-safe way
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72930 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-02 19:01:16 +00:00
Tilghman Lesher
82e2033519 Merged revisions 71657 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r71657 | tilghman | 2007-06-25 13:14:59 -0500 (Mon, 25 Jun 2007) | 10 lines

Merged revisions 71656 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r71656 | tilghman | 2007-06-25 13:12:37 -0500 (Mon, 25 Jun 2007) | 2 lines

Issue 10035 - handle_exec returns a result inconsistent with all of the other AGI commands

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@71658 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-25 18:20:18 +00:00
Joshua Colp
9b23b9b3b2 Minor header inclusion tweak for new usage of stat()
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@71521 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-25 13:00:49 +00:00
Joshua Colp
c00428b0b0 Use stat to determine whether the file exists or not. (issue #10038 reported by Mike Anikienko)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@71158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-22 16:19:53 +00:00
Jason Parker
68ac7f7633 Merged revisions 71068 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r71068 | qwell | 2007-06-22 10:00:30 -0500 (Fri, 22 Jun 2007) | 12 lines

Merged revisions 71065 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r71065 | qwell | 2007-06-22 09:52:18 -0500 (Fri, 22 Jun 2007) | 4 lines

Fix a few silly usages of ast_playstream() - it only ever returns 0...

Issue 10035

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@71069 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-22 15:03:32 +00:00
Joshua Colp
fd9057423a Expand AGISTATUS variable to include NOTFOUND which is set when the AGI file could not be found. (issue #9285 reported by srdjan)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@70731 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-21 15:58:05 +00:00
Russell Bryant
055d82cbce Add a massive set of changes for converting to use the ast_debug() macro.
(issue #9957, patches from mvanbaak, caio1982, critch, and dimas)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@69327 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-14 19:39:12 +00:00