diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2003-06-26 20:32:52 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2003-06-26 20:32:52 +0000 |
commit | bc12b3a7d31aca35b3eb83e14a7f7f238c88bbfb (patch) | |
tree | 0e104ecdc598eb151d361467ce4f5a38793f3109 | |
parent | 61f9833f34202ceb330d48a96ad7001b0cf6e29c (diff) |
Extend manager originate functionality
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@1125 f38db490-d61c-443f-a65b-d21fe96a405b
-rwxr-xr-x | manager.c | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -405,6 +405,8 @@ static int action_originate(struct mansession *s, struct message *m) char *priority = astman_get_header(m, "Priority"); char *timeout = astman_get_header(m, "Timeout"); char *callerid = astman_get_header(m, "CallerID"); + char *app = astman_get_header(m, "Application"); + char *appdata = astman_get_header(m, "Data"); char *tech, *data; int pi = 0; int res; @@ -432,7 +434,11 @@ static int action_originate(struct mansession *s, struct message *m) } *data = '\0'; data++; - res = ast_pbx_outgoing_exten(tech, AST_FORMAT_SLINEAR, data, to, context, exten, pi, &reason, 0, strlen(callerid) ? callerid : NULL, NULL ); + if (strlen(app)) { + res = ast_pbx_outgoing_app(tech, AST_FORMAT_SLINEAR, data, to, app, appdata, &reason, 0, strlen(callerid) ? callerid : NULL ); + } else { + res = ast_pbx_outgoing_exten(tech, AST_FORMAT_SLINEAR, data, to, context, exten, pi, &reason, 0, strlen(callerid) ? callerid : NULL, NULL ); + } if (!res) astman_send_ack(s, "Originate successfully queued"); else |