diff options
author | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-11-26 21:09:58 +0000 |
---|---|---|
committer | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-11-26 21:09:58 +0000 |
commit | 688dbc7fa761b7ac61393a0da9049465a84ded78 (patch) | |
tree | a23b63f95f89d44e282e7b0cda08095a2309b884 /main/manager.c | |
parent | 9d1803e2f7d3bbbdc768bd59a0b0b53a006191ff (diff) |
add support for event suppression for AMI-over-HTTP
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@159629 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/manager.c')
-rw-r--r-- | main/manager.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/main/manager.c b/main/manager.c index d2a76bd02..077fb013e 100644 --- a/main/manager.c +++ b/main/manager.c @@ -2974,8 +2974,14 @@ static int process_message(struct mansession *s, const struct message *m) } if (ret) return ret; - /* Once done with our message, deliver any pending events */ - return process_events(s); + /* Once done with our message, deliver any pending events unless the + requester doesn't want them as part of this response. + */ + if (ast_strlen_zero(astman_get_header(m, "SuppressEvents"))) { + return process_events(s); + } else { + return ret; + } } /*! @@ -3796,6 +3802,7 @@ static struct ast_str *generic_http_callback(enum output_format format, "Content-type: text/%s\r\n" "Cache-Control: no-cache;\r\n" "Set-Cookie: mansession_id=\"%08x\"; Version=\"1\"; Max-Age=%d\r\n" + "Pragma: SuppressEvents\r\n" "\r\n", contenttype[format], s->managerid, httptimeout); |