summaryrefslogtreecommitdiff
path: root/res/res_agi.c
AgeCommit message (Collapse)Author
2008-08-05make datastore creation and destruction a generic API since it is not really ↵Kevin P. Fleming
channel related, and add the ability to add/find/remove datastores to manager sessions git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@135680 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-30Merged revisions 134480 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r134480 | tilghman | 2008-07-30 14:03:44 -0500 (Wed, 30 Jul 2008) | 5 lines launch_netscript sometimes returns -1, which fails to set AGISTATUS. Map failure to -1, so that AGISTATUS is always set. (closes issue #13199) Reported by: smw1218 ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@134481 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-15Fix a couple of places in res_agi where the agi_commands lock would not beRussell Bryant
released, causing a deadlock. (Reported by mvanbaak in #asterisk-dev, discovered by bbryant's change to the lock tracking code to yell at you if a thread exits with a lock still held) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@131072 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-09Code wasn't ready to be merged - see -dev list discussionTilghman Lesher
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@129307 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-05Implement flags for AGI in the channel structure so taht "show channels" andOlle Johansson
AMI commands can display that a channel is under control of an AGI. Work inspired by work at customer site, but paid for by Edvina AB git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@128240 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-18Whitespace onlySean Bright
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@123609 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-05Conditionally load the AGI command gosub, depending on whether or not res_agiTilghman Lesher
has been loaded, fix a return value in the loader, and ensure that the help workhorse header does not print on load. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@120602 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-03Move compatibility options into asterisk.conf, default them to on for upgrades,Tilghman Lesher
and off for new installations. This includes the translation from pipes to commas for pbx_realtime and the EXEC command for AGI, as well as the change to the Set application not to support multiple variables at once. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@120171 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-22- revert change to ast_queue_hangup and create ast_queue_hangup_with_causeMichiel van Baak
- make data member of the ast_frame struct a named union instead of a void Recently the ast_queue_hangup function got a new parameter, the hangupcause Feedback came in that this is no good and that instead a new function should be created. This I did. The hangupcause was stored in the seqno member of the ast_frame struct. This is not very elegant, and since there's already a data member that one should be used. Problem is, this member was a void *. Now it's a named union so it can hold a pointer, an uint32 and there's a padding in case someone wants to store another type in there in the future. This commit is so massive, because all ast_frame.data uses have to be altered to ast_frame.data.data Thanks russellb and kpfleming for the feedback. (closes issue #12674) Reported by: mvanbaak git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@117802 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-14Merged revisions 116466 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r116466 | tilghman | 2008-05-14 16:38:09 -0500 (Wed, 14 May 2008) | 7 lines Avoid zombies when the channel exits before the AGI. (closes issue #12648) Reported by: gkloepfer Patches: 20080514__bug12648.diff.txt uploaded by Corydon76 (license 14) Tested by: gkloepfer ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@116467 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-14Formatting changes (coding guidelines) while thinking about something else...Olle Johansson
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@116224 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-01Modify TIMEOUT() to be accurate down to the millisecond.Tilghman Lesher
(closes issue #10540) Reported by: spendergrass Patches: 20080417__bug10540.diff.txt uploaded by Corydon76 (license 14) Tested by: blitzrage git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@115076 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-17Merged revisions 114195 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r114195 | tilghman | 2008-04-17 07:56:38 -0500 (Thu, 17 Apr 2008) | 8 lines Add special case for when the agi cannot be executed, to comply with the documentation that we return failure in that case. (closes issue #12462) Reported by: fmueller Patches: 20080416__bug12462.diff.txt uploaded by Corydon76 (license 14) Tested by: fmueller ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114196 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-16Standardized routines for forking processes (keeps all the specialized code ↵Tilghman Lesher
in one place). git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114188 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-05AsyncAGI should not close the manager session on error.Tilghman Lesher
(closes issue #12370) Reported by: srt Patches: asterisk-12370.diff uploaded by srt (license 378) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112972 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18Go through and fix a bunch of places where character strings were being ↵Terry Wilson
interpreted as format strings. Most of these changes are solely to make compiling with -Wsecurity and -Wformat=2 happy, and were not actual problems, per se. I also added format attributes to any printf wrapper functions I found that didn't have them. -Wsecurity and -Wmissing-format-attribute added to --enable-dev-mode. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109447 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-06trivial fix for an agi error when attempting to use EAGI on a dead/hungup ↵Donny Kavanagh
channel, we now print an error that makes sense given our removal of deadagi as an actual application. (closes issue #12161) Reported by: explidous Patches: res_agi_12161.patch uploaded by juggie (license 24) Tested by: juggie git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@106399 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-05Create a centralized configuration option for silencethresholdTilghman Lesher
(closes issue #11236) Reported by: philipps Patches: 20080218__bug11236.diff.txt uploaded by Corydon76 (license 14) Tested by: philipps git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@106072 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-26Rename version.h to ast_version.h. Next, I will be re-adding version.h as anRussell Bryant
automatically generated file like it used to be. This still needs to be there for modules that have to check it to compile against multiple asterisk versions. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@104244 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-21Instead of a notice, make the message about a hung-up channel a debug ↵Mark Michelson
message, and revert the original logic on the if statement. Thanks to Juggie for bringing this to my attention. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@104025 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-21Don't print the fact that we are using dead mode in AGI if called from the Mark Michelson
'h' extension since it is well-known that it will be running in dead mode. (closes issue #12046) Reported by: explidous git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@104020 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-14Formatting fixesOlle Johansson
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103668 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-11Remove ast_module_user usage from res_agi. This is taken care of in the core.Joshua Colp
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103319 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-08Merge changes from team/mvanbaak/cli-command-auditRussell Bryant
(closes issue #8925) About a year ago, as Leif Madsen and Jim van Meggelen were going over the CLI commands in Asterisk 1.4 for the next version of their book, they documented a lot of inconsistencies. This set of changes addresses all of these issues and has been reviewed by Leif. While this does introduce even more changes to the CLI command structure, it makes everything consistent, which is the most important thing. Thanks to all that helped with this one! git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103171 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-05Get rid of any remaining ast_verbose calls in the code in favor of Mark Michelson
ast_verb (closes issue #11934) Reported by: mvanbaak Patches: 20080205_astverb-2.diff.txt uploaded by mvanbaak (license 7) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@102525 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-11Merged revisions 98317 via svnmerge from Joshua Colp
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r98317 | file | 2008-01-11 15:28:30 -0400 (Fri, 11 Jan 2008) | 6 lines If the channel is hungup during RECORD FILE send a result code of -1 to be uniform with everything else. (closes issue #11743) Reported by: davevg Patches: res_agi.diff uploaded by davevg (license 209) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@98318 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-05Now that the version.h file was getting properly regenerated every time the svnRussell Bryant
revision changed, every module that used the version was getting rebuilt after every svn update. This severly annoyed me pretty quickly, so I have improved the situation. Now, instead of generating version.h, main/version.c is generated. version.c includes the version information, as well as a couple of API calls for modules to retrieve the version. So now, only version.c will get rebuilt, and the main asterisk binary relinked, which is must faster than rebuilding http.c, manager.c, asterisk.c, relinking the asterisk binary, chan_sip.c, func_version.c, res_agi ... The only minor change in behavior here is that the version information reported by chan_sip, for example, is the version of the Asterisk core, and not necessarily the Asterisk version that the chan_sip module came from. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@96717 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-03Add coordination between AMI and AGI applications, with an asyncagi methodTilghman Lesher
Feature proposed and patched by: moy (Closes issue #11282) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@96174 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-25Add channel thread ID to the information passed to AGI.Tilghman Lesher
Reported by: dror99 Patch by: tilghman (Closes issue #11162) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94771 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-14Publish the AGI events to manager.Tilghman Lesher
Reported by: moy Patch by: moy,tilghman (Closes issue #11337) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92999 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-14Merged revisions 92933 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r92933 | tilghman | 2007-12-14 09:01:10 -0600 (Fri, 14 Dec 2007) | 5 lines Change help documentation to match actual behavior (FAILURE vs FAILED). Reported by: angeloxx-sir Patch by: tilghman (Closes issue #11548) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92936 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-13Move usage of the old LOCAL_USER_* macros to the new ast_module_user_* ↵Joshua Colp
functions in a few documentation places. (closes issue #11533) Reported by: IgorG Patches: oldmacroclean.v1.diff uploaded by IgorG (license 20) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92811 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-10Only send a SIGHUP if the pid is greater than -1, otherwise all PIDs greater ↵Joshua Colp
than -1 will get the SIGHUP... and that is bad. (closes issue #11453) Reported by: alanmcmillan git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92199 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-04Pass the Asterisk version to AGI scripts as part of the initial dump of infoTilghman Lesher
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-03Add AGI commands for speech recognition. These mirror the dialplan ↵Joshua Colp
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-11-28Fix a few log messages.Joshua Colp
(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-22remove a number of #include <fcntl.h> which are eitherLuigi Rizzo
useless or done elsewhere git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89516 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-21remove a bunch of useless #include "options.h"Luigi Rizzo
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89511 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-20move asterisk/paths.h outside asterisk.h and into those filesLuigi Rizzo
who really need it. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89466 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-19include "logger.h" and errno.h from asterisk.h - usage shows that theyLuigi Rizzo
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-17start using asterisk/network.h for network related headers.Luigi Rizzo
Also remove some unnecessary includes. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89380 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16remove a bunch of duplicate includesLuigi Rizzo
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-16Start untangling header inclusion in a way that does not affectLuigi Rizzo
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-08improve linked-list macros in two ways:Kevin P. Fleming
- 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-07Print out the channel name as a prefix to the "agi debug" output. This makesRussell Bryant
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-01This commits the performance mods that give the priority processing engine ↵Steve Murphy
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-10-22Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former ↵Jason Parker
didn't make much sense git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86820 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-19Convert NEW_CLI to AST_CLI.Jason Parker
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-01Merged revisions 84236 via svnmerge from Russell Bryant
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-09-18Merged revisions 82929 via svnmerge from Russell Bryant
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