mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-03 12:25:35 +00:00
Implement flags for AGI in the channel structure so taht "show channels" and
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
This commit is contained in:
17
main/pbx.c
17
main/pbx.c
@@ -2901,6 +2901,18 @@ static void pbx_substitute_variables(char *passdata, int datalen, struct ast_cha
|
||||
pbx_substitute_variables_helper(c, e->data, passdata, datalen - 1);
|
||||
}
|
||||
|
||||
/*! \brief report AGI state for channel */
|
||||
const char *agi_state(struct ast_channel *chan)
|
||||
{
|
||||
if (ast_test_flag(chan, AST_FLAG_AGI))
|
||||
return "AGI";
|
||||
if (ast_test_flag(chan, AST_FLAG_FASTAGI))
|
||||
return "FASTAGI";
|
||||
if (ast_test_flag(chan, AST_FLAG_ASYNCAGI))
|
||||
return "ASYNCAGI";
|
||||
return "";
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief The return value depends on the action:
|
||||
*
|
||||
@@ -2981,8 +2993,9 @@ static int pbx_extension_helper(struct ast_channel *c, struct ast_context *con,
|
||||
"Priority: %d\r\n"
|
||||
"Application: %s\r\n"
|
||||
"AppData: %s\r\n"
|
||||
"Uniqueid: %s\r\n",
|
||||
c->name, c->context, c->exten, c->priority, app->name, passdata, c->uniqueid);
|
||||
"Uniqueid: %s\r\n"
|
||||
"AGIstate: %s\r\n",
|
||||
c->name, c->context, c->exten, c->priority, app->name, passdata, c->uniqueid, agi_state(c));
|
||||
return pbx_exec(c, app, passdata); /* 0 on success, -1 on failure */
|
||||
}
|
||||
} else if (q.swo) { /* not found here, but in another switch */
|
||||
|
||||
Reference in New Issue
Block a user