diff options
Diffstat (limited to 'res/res_agi.c')
-rw-r--r-- | res/res_agi.c | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/res/res_agi.c b/res/res_agi.c index ae6c3196d..ab9297b35 100644 --- a/res/res_agi.c +++ b/res/res_agi.c @@ -444,7 +444,7 @@ static enum agi_result launch_asyncagi(struct ast_channel *chan, char *argv[], i /* OK, we have a command, let's call the command handler. */ res = agi_handle_command(chan, &async_agi, cmd->cmd_buffer, 0); - if ((res < 0) || (res == AST_PBX_KEEPALIVE)) { + if (res < 0) { free_agi_cmd(cmd); break; } @@ -1999,12 +1999,6 @@ static int handle_speechrecognize(struct ast_channel *chan, AGI *agi, int argc, return RESULT_SUCCESS; } -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 AST_PBX_KEEPALIVE; -} - static char usage_setmusic[] = " Usage: SET MUSIC ON <on|off> <class>\n" " Enables/Disables the music on hold generator. If <class> is\n" @@ -2248,10 +2242,6 @@ static char usage_autohangup[] = " future. Of course it can be hungup before then as well. Setting to 0 will\n" " cause the autohangup feature to be disabled on this channel.\n"; -static char usage_break_aagi[] = -" Usage: ASYNCAGI BREAK\n" -" Break the Async AGI loop.\n"; - static char usage_noop[] = " Usage: NoOp\n" " Does nothing.\n"; @@ -2337,7 +2327,6 @@ static struct agi_command commands[] = { { { "speech", "activate", "grammar", NULL }, handle_speechactivategrammar, "Activates a grammar", usage_speechactivategrammar, 0 }, { { "speech", "deactivate", "grammar", NULL }, handle_speechdeactivategrammar, "Deactivates a grammar", usage_speechdeactivategrammar, 0 }, { { "speech", "recognize", NULL }, handle_speechrecognize, "Recognizes speech", usage_speechrecognize, 0 }, - { { "asyncagi", "break", NULL }, handle_asyncagi_break, "Break AsyncAGI loop", usage_break_aagi, 0 }, }; static AST_RWLIST_HEAD_STATIC(agi_commands, agi_command); @@ -2588,7 +2577,6 @@ static int agi_handle_command(struct ast_channel *chan, AGI *agi, char *buf, int ast_module_unref(c->mod); switch (res) { case RESULT_SHOWUSAGE: ami_res = "Usage"; resultcode = 520; break; - case AST_PBX_KEEPALIVE: ami_res = "KeepAlive"; resultcode = 210; break; case RESULT_FAILURE: ami_res = "Failure"; resultcode = -1; break; case RESULT_SUCCESS: ami_res = "Success"; resultcode = 200; break; } @@ -2605,10 +2593,6 @@ static int agi_handle_command(struct ast_channel *chan, AGI *agi, char *buf, int ast_agi_send(agi->fd, chan, "%s", c->usage); ast_agi_send(agi->fd, chan, "520 End of proper usage.\n"); break; - case AST_PBX_KEEPALIVE: - /* We've been asked to keep alive, so do so */ - return AST_PBX_KEEPALIVE; - break; case RESULT_FAILURE: /* They've already given the failure. We've been hung up on so handle this appropriately */ @@ -2713,8 +2697,9 @@ static enum agi_result run_agi(struct ast_channel *chan, char *request, AGI *agi if (!buf[0]) { /* Program terminated */ - if (returnstatus && returnstatus != AST_PBX_KEEPALIVE) + if (returnstatus) { returnstatus = -1; + } ast_verb(3, "<%s>AGI Script %s completed, returning %d\n", chan->name, request, returnstatus); if (pid > 0) waitpid(pid, status, 0); @@ -2736,7 +2721,7 @@ static enum agi_result run_agi(struct ast_channel *chan, char *request, AGI *agi ast_verbose("<%s>AGI Rx << %s\n", chan->name, buf); returnstatus |= agi_handle_command(chan, agi, buf, dead); /* If the handle_command returns -1, we need to stop */ - if ((returnstatus < 0) || (returnstatus == AST_PBX_KEEPALIVE)) { + if (returnstatus < 0) { needhup = 1; continue; } |