summaryrefslogtreecommitdiff
path: root/res/res_agi.c
diff options
context:
space:
mode:
authorTilghman Lesher <tilghman@meg.abyt.es>2009-05-04 19:29:13 +0000
committerTilghman Lesher <tilghman@meg.abyt.es>2009-05-04 19:29:13 +0000
commite0aba74fa9e6e36717fdbc9bd91ffa3b8daa76f0 (patch)
tree17ac0ab67c95751d0813f14c82464d3e059b9b95 /res/res_agi.c
parentf69d6d46f1eb3a64025bf77e3eae1199062f48d5 (diff)
Restore 'asyncagi break' command to 1.6.1 and higher.
(closes issue #14985) Reported by: nikkk Patches: 20090428__bug14985.diff.txt uploaded by tilghman (license 14) 20090429__bug14985__1.6.1.diff.txt uploaded by tilghman (license 14) Tested by: nikkk git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@192171 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'res/res_agi.c')
-rw-r--r--res/res_agi.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/res/res_agi.c b/res/res_agi.c
index 7eebf7c61..22002557a 100644
--- a/res/res_agi.c
+++ b/res/res_agi.c
@@ -78,6 +78,19 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
<ref type="agi">hangup</ref>
</see-also>
</agi>
+ <agi name="asyncagi break" language="en_US">
+ <synopsis>
+ Interrupts Async AGI
+ </synopsis>
+ <syntax />
+ <description>
+ <para>Interrupts expected flow of Async AGI commands and returns control to previous source
+ (typically, the PBX dialplan).</para>
+ </description>
+ <see-also>
+ <ref type="agi">hangup</ref>
+ </see-also>
+ </agi>
<agi name="channel status" language="en_US">
<synopsis>
Returns status of the connected channel.
@@ -1034,6 +1047,12 @@ static int handle_answer(struct ast_channel *chan, AGI *agi, int argc, char *arg
return (res >= 0) ? RESULT_SUCCESS : RESULT_FAILURE;
}
+static int handle_asyncagi_break(struct ast_channel *chan, AGI *agi, int argc, char *argv[])
+{
+ ast_agi_send(agi->fd, chan, "200 result=0\n");
+ return RESULT_FAILURE;
+}
+
static int handle_waitfordigit(struct ast_channel *chan, AGI *agi, int argc, char *argv[])
{
int res, to;
@@ -2474,6 +2493,7 @@ static char usage_speechrecognize[] =
*/
static struct agi_command commands[] = {
{ { "answer", NULL }, handle_answer, NULL, NULL, 0 },
+ { { "asyncagi", "break", NULL }, handle_asyncagi_break, NULL, NULL, 1 },
{ { "channel", "status", NULL }, handle_channelstatus, NULL, NULL, 0 },
{ { "database", "del", NULL }, handle_dbdel, NULL, NULL, 1 },
{ { "database", "deltree", NULL }, handle_dbdeltree, NULL, NULL, 1 },