diff options
author | Matthew Jordan <mjordan@digium.com> | 2013-10-04 16:01:48 +0000 |
---|---|---|
committer | Matthew Jordan <mjordan@digium.com> | 2013-10-04 16:01:48 +0000 |
commit | 8d7873b836999b09caad87abec27579f1f065b84 (patch) | |
tree | cdf683ab18142553b42102de6c5ca52fc71b22a2 /main/asterisk.c | |
parent | b52c972b172087d27178c0e60127d486d4e500f8 (diff) |
ARI: Add subscription support
This patch adds an /applications API to ARI, allowing explicit management of
Stasis applications.
* GET /applications - list current applications
* GET /applications/{applicationName} - get details of a specific application
* POST /applications/{applicationName}/subscription - explicitly subscribe to
a channel, bridge or endpoint
* DELETE /applications/{applicationName}/subscription - explicitly unsubscribe
from a channel, bridge or endpoint
Subscriptions work by a reference counting mechanism: if you subscript to an
event source X number of times, you must unsubscribe X number of times to stop
receiveing events for that event source.
Review: https://reviewboard.asterisk.org/r/2862
(issue ASTERISK-22451)
Reported by: Matt Jordan
........
Merged revisions 400522 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@400523 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/asterisk.c')
-rw-r--r-- | main/asterisk.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/main/asterisk.c b/main/asterisk.c index 7e581513c..95355e42f 100644 --- a/main/asterisk.c +++ b/main/asterisk.c @@ -247,6 +247,7 @@ int daemon(int, int); /* defined in libresolv of all places */ #include "asterisk/stasis_endpoints.h" #include "asterisk/stasis_system.h" #include "asterisk/security_events.h" +#include "asterisk/endpoints.h" #include "../defaults.h" @@ -4340,6 +4341,11 @@ int main(int argc, char *argv[]) ast_channels_init(); + if (ast_endpoint_init()) { + printf ("%s", term_quit()); + exit(1); + } + if ((moduleresult = load_modules(1))) { /* Load modules, pre-load only */ printf("%s", term_quit()); exit(moduleresult == -2 ? 2 : 1); |