[asterisk-commits] kmoore: branch kmoore/stasis-http_sounds r388686 - in /team/kmoore/stasis-htt...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Tue May 14 09:11:35 CDT 2013
Author: kmoore
Date: Tue May 14 09:11:32 2013
New Revision: 388686
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=388686
Log:
Move JSON event generators into separate modules
This moves the JSON event generators out of the Stasis-HTTP modules and
into standalone JSON-related counterparts so that Stasis-HTTP and
res_stasis can depend on them without creating dependency cycles. This
also provides a future location for Swagger Model validator functions
once the generators for that code are written.
Review: https://reviewboard.asterisk.org/r/2534/
........
Merged revisions 388668 from http://svn.asterisk.org/svn/asterisk/trunk
Added:
team/kmoore/stasis-http_sounds/res/res_stasis_json_asterisk.c
- copied unchanged from r388668, trunk/res/res_stasis_json_asterisk.c
team/kmoore/stasis-http_sounds/res/res_stasis_json_asterisk.exports.in
- copied unchanged from r388668, trunk/res/res_stasis_json_asterisk.exports.in
team/kmoore/stasis-http_sounds/res/res_stasis_json_bridges.c
- copied unchanged from r388668, trunk/res/res_stasis_json_bridges.c
team/kmoore/stasis-http_sounds/res/res_stasis_json_bridges.exports.in
- copied unchanged from r388668, trunk/res/res_stasis_json_bridges.exports.in
team/kmoore/stasis-http_sounds/res/res_stasis_json_channels.c
- copied unchanged from r388668, trunk/res/res_stasis_json_channels.c
team/kmoore/stasis-http_sounds/res/res_stasis_json_channels.exports.in
- copied unchanged from r388668, trunk/res/res_stasis_json_channels.exports.in
team/kmoore/stasis-http_sounds/res/res_stasis_json_endpoints.c
- copied unchanged from r388668, trunk/res/res_stasis_json_endpoints.c
team/kmoore/stasis-http_sounds/res/res_stasis_json_endpoints.exports.in
- copied unchanged from r388668, trunk/res/res_stasis_json_endpoints.exports.in
team/kmoore/stasis-http_sounds/res/res_stasis_json_events.c
- copied unchanged from r388668, trunk/res/res_stasis_json_events.c
team/kmoore/stasis-http_sounds/res/res_stasis_json_events.exports.in
- copied unchanged from r388668, trunk/res/res_stasis_json_events.exports.in
team/kmoore/stasis-http_sounds/res/res_stasis_json_playback.c
- copied unchanged from r388668, trunk/res/res_stasis_json_playback.c
team/kmoore/stasis-http_sounds/res/res_stasis_json_playback.exports.in
- copied unchanged from r388668, trunk/res/res_stasis_json_playback.exports.in
team/kmoore/stasis-http_sounds/res/res_stasis_json_recordings.c
- copied unchanged from r388668, trunk/res/res_stasis_json_recordings.c
team/kmoore/stasis-http_sounds/res/res_stasis_json_recordings.exports.in
- copied unchanged from r388668, trunk/res/res_stasis_json_recordings.exports.in
team/kmoore/stasis-http_sounds/res/res_stasis_json_sounds.c
- copied unchanged from r388668, trunk/res/res_stasis_json_sounds.c
team/kmoore/stasis-http_sounds/res/res_stasis_json_sounds.exports.in
- copied unchanged from r388668, trunk/res/res_stasis_json_sounds.exports.in
team/kmoore/stasis-http_sounds/res/stasis_json/
- copied from r388668, trunk/res/stasis_json/
team/kmoore/stasis-http_sounds/rest-api-templates/res_stasis_json_resource.c.mustache
- copied unchanged from r388668, trunk/rest-api-templates/res_stasis_json_resource.c.mustache
team/kmoore/stasis-http_sounds/rest-api-templates/res_stasis_json_resource.exports.mustache
- copied unchanged from r388668, trunk/rest-api-templates/res_stasis_json_resource.exports.mustache
team/kmoore/stasis-http_sounds/rest-api-templates/stasis_json_resource.h.mustache
- copied unchanged from r388668, trunk/rest-api-templates/stasis_json_resource.h.mustache
Modified:
team/kmoore/stasis-http_sounds/ (props changed)
team/kmoore/stasis-http_sounds/res/res_stasis.c
team/kmoore/stasis-http_sounds/res/res_stasis_http_events.c
team/kmoore/stasis-http_sounds/res/stasis_http/resource_asterisk.h
team/kmoore/stasis-http_sounds/res/stasis_http/resource_bridges.h
team/kmoore/stasis-http_sounds/res/stasis_http/resource_channels.h
team/kmoore/stasis-http_sounds/res/stasis_http/resource_endpoints.h
team/kmoore/stasis-http_sounds/res/stasis_http/resource_events.h
team/kmoore/stasis-http_sounds/res/stasis_http/resource_playback.h
team/kmoore/stasis-http_sounds/res/stasis_http/resource_recordings.h
team/kmoore/stasis-http_sounds/res/stasis_http/resource_sounds.h
team/kmoore/stasis-http_sounds/rest-api-templates/make_stasis_http_stubs.py
team/kmoore/stasis-http_sounds/rest-api-templates/res_stasis_http_resource.c.mustache
team/kmoore/stasis-http_sounds/rest-api-templates/stasis_http_resource.h.mustache
team/kmoore/stasis-http_sounds/tests/test_res_stasis.c
Propchange: team/kmoore/stasis-http_sounds/
------------------------------------------------------------------------------
automerge = *
Propchange: team/kmoore/stasis-http_sounds/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Tue May 14 09:11:32 2013
@@ -1,1 +1,1 @@
-/trunk:1-388657
+/trunk:1-388685
Modified: team/kmoore/stasis-http_sounds/res/res_stasis.c
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/res_stasis.c?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/res_stasis.c (original)
+++ team/kmoore/stasis-http_sounds/res/res_stasis.c Tue May 14 09:11:32 2013
@@ -24,6 +24,7 @@
*/
/*** MODULEINFO
+ <depend>res_stasis_json_events</depend>
<support_level>core</support_level>
***/
@@ -41,7 +42,7 @@
#include "asterisk/strings.h"
#include "asterisk/stasis_message_router.h"
#include "asterisk/callerid.h"
-#include "stasis_http/resource_events.h"
+#include "stasis_json/resource_events.h"
/*! Time to wait for a frame in the application */
#define MAX_WAIT_MS 200
Modified: team/kmoore/stasis-http_sounds/res/res_stasis_http_events.c
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/res_stasis_http_events.c?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/res_stasis_http_events.c (original)
+++ team/kmoore/stasis-http_sounds/res/res_stasis_http_events.c Tue May 14 09:11:32 2013
@@ -44,7 +44,6 @@
#include "asterisk/module.h"
#include "asterisk/stasis_app.h"
#include "stasis_http/resource_events.h"
-#include "asterisk/stasis_channels.h"
/*!
* \brief Parameter parsing callback for /events.
@@ -79,524 +78,6 @@
.children = { }
};
-struct ast_json *stasis_json_event_channel_snapshot_create(
- struct ast_channel_snapshot *channel_snapshot
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- int ret;
-
- ast_assert(channel_snapshot != NULL);
-
- event = ast_json_object_create();
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_snapshot", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_channel_destroyed_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- struct ast_json *validator;
- int ret;
-
- ast_assert(channel_snapshot != NULL);
- ast_assert(blob != NULL);
- ast_assert(ast_json_object_get(blob, "channel") == NULL);
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-
- validator = ast_json_object_get(blob, "cause");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- validator = ast_json_object_get(blob, "cause_txt");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- event = ast_json_deep_copy(blob);
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_destroyed", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_channel_caller_id_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- struct ast_json *validator;
- int ret;
-
- ast_assert(channel_snapshot != NULL);
- ast_assert(blob != NULL);
- ast_assert(ast_json_object_get(blob, "channel") == NULL);
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-
- validator = ast_json_object_get(blob, "caller_presentation_txt");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- validator = ast_json_object_get(blob, "caller_presentation");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- event = ast_json_deep_copy(blob);
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_caller_id", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_channel_hangup_request_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- struct ast_json *validator;
- int ret;
-
- ast_assert(channel_snapshot != NULL);
- ast_assert(blob != NULL);
- ast_assert(ast_json_object_get(blob, "channel") == NULL);
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-
- validator = ast_json_object_get(blob, "soft");
- if (validator) {
- /* do validation? XXX */
- }
-
- validator = ast_json_object_get(blob, "cause");
- if (validator) {
- /* do validation? XXX */
- }
-
- event = ast_json_deep_copy(blob);
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_hangup_request", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_application_replaced_create(
- struct ast_json *blob
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- struct ast_json *validator;
-
- ast_assert(blob != NULL);
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-
- validator = ast_json_object_get(blob, "application");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- event = ast_json_deep_copy(blob);
- if (!event) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "application_replaced", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_channel_varset_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- struct ast_json *validator;
- int ret;
-
- ast_assert(channel_snapshot != NULL);
- ast_assert(blob != NULL);
- ast_assert(ast_json_object_get(blob, "channel") == NULL);
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-
- validator = ast_json_object_get(blob, "variable");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- validator = ast_json_object_get(blob, "value");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- event = ast_json_deep_copy(blob);
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_varset", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_channel_userevent_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- struct ast_json *validator;
- int ret;
-
- ast_assert(channel_snapshot != NULL);
- ast_assert(blob != NULL);
- ast_assert(ast_json_object_get(blob, "channel") == NULL);
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-
- validator = ast_json_object_get(blob, "eventname");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- event = ast_json_deep_copy(blob);
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_userevent", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_channel_created_create(
- struct ast_channel_snapshot *channel_snapshot
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- int ret;
-
- ast_assert(channel_snapshot != NULL);
-
- event = ast_json_object_create();
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_created", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_stasis_start_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- struct ast_json *validator;
- int ret;
-
- ast_assert(channel_snapshot != NULL);
- ast_assert(blob != NULL);
- ast_assert(ast_json_object_get(blob, "channel") == NULL);
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-
- validator = ast_json_object_get(blob, "args");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- event = ast_json_deep_copy(blob);
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "stasis_start", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_channel_dialplan_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- struct ast_json *validator;
- int ret;
-
- ast_assert(channel_snapshot != NULL);
- ast_assert(blob != NULL);
- ast_assert(ast_json_object_get(blob, "channel") == NULL);
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-
- validator = ast_json_object_get(blob, "application");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- validator = ast_json_object_get(blob, "application_data");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- event = ast_json_deep_copy(blob);
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_dialplan", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_channel_state_change_create(
- struct ast_channel_snapshot *channel_snapshot
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- int ret;
-
- ast_assert(channel_snapshot != NULL);
-
- event = ast_json_object_create();
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_state_change", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_channel_dtmf_received_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- struct ast_json *validator;
- int ret;
-
- ast_assert(channel_snapshot != NULL);
- ast_assert(blob != NULL);
- ast_assert(ast_json_object_get(blob, "channel") == NULL);
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-
- validator = ast_json_object_get(blob, "digit");
- if (validator) {
- /* do validation? XXX */
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
- }
-
- event = ast_json_deep_copy(blob);
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "channel_dtmf_received", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-struct ast_json *stasis_json_event_stasis_end_create(
- struct ast_channel_snapshot *channel_snapshot
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
- int ret;
-
- ast_assert(channel_snapshot != NULL);
-
- event = ast_json_object_create();
- if (!event) {
- return NULL;
- }
-
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
- message = ast_json_pack("{s: o}", "stasis_end", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
static int load_module(void)
{
stasis_app_ref();
Modified: team/kmoore/stasis-http_sounds/res/stasis_http/resource_asterisk.h
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/stasis_http/resource_asterisk.h?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/stasis_http/resource_asterisk.h (original)
+++ team/kmoore/stasis-http_sounds/res/stasis_http/resource_asterisk.h Tue May 14 09:11:32 2013
@@ -53,10 +53,4 @@
*/
void stasis_http_get_asterisk_info(struct ast_variable *headers, struct ast_get_asterisk_info_args *args, struct stasis_http_response *response);
-/*
- * JSON models
- *
- * AsteriskInfo
- */
-
#endif /* _ASTERISK_RESOURCE_ASTERISK_H */
Modified: team/kmoore/stasis-http_sounds/res/stasis_http/resource_bridges.h
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/stasis_http/resource_bridges.h?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/stasis_http/resource_bridges.h (original)
+++ team/kmoore/stasis-http_sounds/res/stasis_http/resource_bridges.h Tue May 14 09:11:32 2013
@@ -151,12 +151,4 @@
*/
void stasis_http_record_bridge(struct ast_variable *headers, struct ast_record_bridge_args *args, struct stasis_http_response *response);
-/*
- * JSON models
- *
- * Bridge
- * - channels: List[string] (required)
- * - bridgeType: string (required)
- */
-
#endif /* _ASTERISK_RESOURCE_BRIDGES_H */
Modified: team/kmoore/stasis-http_sounds/res/stasis_http/resource_channels.h
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/stasis_http/resource_channels.h?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/stasis_http/resource_channels.h (original)
+++ team/kmoore/stasis-http_sounds/res/stasis_http/resource_channels.h Tue May 14 09:11:32 2013
@@ -241,34 +241,4 @@
*/
void stasis_http_record_channel(struct ast_variable *headers, struct ast_record_channel_args *args, struct stasis_http_response *response);
-/*
- * JSON models
- *
- * Originated
- * DialplanCEP
- * - priority: long (required)
- * - exten: string (required)
- * - context: string (required)
- * Channel
- * - accountcode: string (required)
- * - linkedid: string (required)
- * - name: string (required)
- * - userfield: string (required)
- * - caller: CallerID (required)
- * - creationtime: Date (required)
- * - state: string (required)
- * - parkinglot: string (required)
- * - peeraccount: string (required)
- * - appl: string (required)
- * - connected: CallerID (required)
- * - uniqueid: string (required)
- * - hangupsource: string (required)
- * - dialplan: DialplanCEP (required)
- * - data: string (required)
- * CallerID
- * - name: string (required)
- * - number: string (required)
- * Dialed
- */
-
#endif /* _ASTERISK_RESOURCE_CHANNELS_H */
Modified: team/kmoore/stasis-http_sounds/res/stasis_http/resource_endpoints.h
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/stasis_http/resource_endpoints.h?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/stasis_http/resource_endpoints.h (original)
+++ team/kmoore/stasis-http_sounds/res/stasis_http/resource_endpoints.h Tue May 14 09:11:32 2013
@@ -79,12 +79,4 @@
*/
void stasis_http_get_endpoint(struct ast_variable *headers, struct ast_get_endpoint_args *args, struct stasis_http_response *response);
-/*
- * JSON models
- *
- * Endpoint
- * - resource: string (required)
- * - technology: string (required)
- */
-
#endif /* _ASTERISK_RESOURCE_ENDPOINTS_H */
Modified: team/kmoore/stasis-http_sounds/res/stasis_http/resource_events.h
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/stasis_http/resource_events.h?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/stasis_http/resource_events.h (original)
+++ team/kmoore/stasis-http_sounds/res/stasis_http/resource_events.h Tue May 14 09:11:32 2013
@@ -55,240 +55,4 @@
*/
void stasis_http_event_websocket(struct ast_variable *headers, struct ast_event_websocket_args *args, struct stasis_http_response *response);
-struct ast_channel_snapshot;
-struct ast_bridge_snapshot;
-
-/*!
- * \brief Some part of channel state changed.
- *
- * \param channel The channel to be used to generate this event
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_snapshot_create(
- struct ast_channel_snapshot *channel_snapshot
- );
-
-/*!
- * \brief Notification that a channel has been destroyed.
- *
- * \param channel The channel to be used to generate this event
- * \param blob JSON blob containing the following parameters:
- * - cause: integer - Integer representation of the cause of the hangup (required)
- * - cause_txt: string - Text representation of the cause of the hangup (required)
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_destroyed_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- );
-
-/*!
- * \brief Channel changed Caller ID.
- *
- * \param channel The channel that changed Caller ID.
- * \param blob JSON blob containing the following parameters:
- * - caller_presentation_txt: string - The text representation of the Caller Presentation value. (required)
- * - caller_presentation: integer - The integer representation of the Caller Presentation value. (required)
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_caller_id_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- );
-
-/*!
- * \brief A hangup was requested on the channel.
- *
- * \param channel The channel on which the hangup was requested.
- * \param blob JSON blob containing the following parameters:
- * - soft: boolean - Whether the hangup request was a soft hangup request.
- * - cause: integer - Integer representation of the cause of the hangup.
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_hangup_request_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- );
-
-/*!
- * \brief Notification that another WebSocket has taken over for an application.
- *
- * \param blob JSON blob containing the following parameters:
- * - application: string (required)
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_application_replaced_create(
- struct ast_json *blob
- );
-
-/*!
- * \brief Channel variable changed.
- *
- * \param channel The channel on which the variable was set.
- * \param blob JSON blob containing the following parameters:
- * - variable: string - The variable that changed. (required)
- * - value: string - The new value of the variable. (required)
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_varset_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- );
-
-/*!
- * \brief User-generated event with additional user-defined fields in the object.
- *
- * \param channel The channel that signaled the user event.
- * \param blob JSON blob containing the following parameters:
- * - eventname: string - The name of the user event. (required)
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_userevent_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- );
-
-/*!
- * \brief Notification that a channel has been created.
- *
- * \param channel The channel to be used to generate this event
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_created_create(
- struct ast_channel_snapshot *channel_snapshot
- );
-
-/*!
- * \brief Notification that a channel has entered a Stasis appliction.
- *
- * \param channel The channel to be used to generate this event
- * \param blob JSON blob containing the following parameters:
- * - args: List[string] - Arguments to the application (required)
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_stasis_start_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- );
-
-/*!
- * \brief Channel changed location in the dialplan.
- *
- * \param channel The channel that changed dialplan location.
- * \param blob JSON blob containing the following parameters:
- * - application: string - The application that the channel is currently in. (required)
- * - application_data: string - The data that was passed to the application when it was invoked. (required)
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_dialplan_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- );
-
-/*!
- * \brief Notification of a channel's state change.
- *
- * \param channel The channel to be used to generate this event
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_state_change_create(
- struct ast_channel_snapshot *channel_snapshot
- );
-
-/*!
- * \brief DTMF received on a channel.
- *
- * \param channel The channel on which DTMF was received
- * \param blob JSON blob containing the following parameters:
- * - digit: string - DTMF digit received (0-9, A-E, # or *) (required)
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_channel_dtmf_received_create(
- struct ast_channel_snapshot *channel_snapshot,
- struct ast_json *blob
- );
-
-/*!
- * \brief Notification that a channel has left a Stasis appliction.
- *
- * \param channel The channel to be used to generate this event
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-struct ast_json *stasis_json_event_stasis_end_create(
- struct ast_channel_snapshot *channel_snapshot
- );
-
-/*
- * JSON models
- *
- * ChannelSnapshot
- * ChannelDestroyed
- * - cause: integer (required)
- * - cause_txt: string (required)
- * ChannelCallerId
- * - caller_presentation_txt: string (required)
- * - caller_presentation: integer (required)
- * ChannelHangupRequest
- * - soft: boolean
- * - cause: integer
- * ApplicationReplaced
- * - application: string (required)
- * ChannelVarset
- * - variable: string (required)
- * - value: string (required)
- * ChannelUserevent
- * - eventname: string (required)
- * ChannelCreated
- * StasisStart
- * - args: List[string] (required)
- * ChannelDialplan
- * - application: string (required)
- * - application_data: string (required)
- * ChannelStateChange
- * ChannelDtmfReceived
- * - digit: string (required)
- * Event
- * - channel_created: ChannelCreated
- * - channel_destroyed: ChannelDestroyed
- * - channel_dialplan: ChannelDialplan
- * - channel_varset: ChannelVarset
- * - application_replaced: ApplicationReplaced
- * - channel_state_change: ChannelStateChange
- * - stasis_start: StasisStart
- * - application: string (required)
- * - channel_hangup_request: ChannelHangupRequest
- * - channel_userevent: ChannelUserevent
- * - channel_snapshot: ChannelSnapshot
- * - channel_dtmf_received: ChannelDtmfReceived
- * - channel_caller_id: ChannelCallerId
- * - stasis_end: StasisEnd
- * StasisEnd
- */
-
#endif /* _ASTERISK_RESOURCE_EVENTS_H */
Modified: team/kmoore/stasis-http_sounds/res/stasis_http/resource_playback.h
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/stasis_http/resource_playback.h?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/stasis_http/resource_playback.h (original)
+++ team/kmoore/stasis-http_sounds/res/stasis_http/resource_playback.h Tue May 14 09:11:32 2013
@@ -81,11 +81,4 @@
*/
void stasis_http_control_playback(struct ast_variable *headers, struct ast_control_playback_args *args, struct stasis_http_response *response);
-/*
- * JSON models
- *
- * Playback
- * - id: string (required)
- */
-
#endif /* _ASTERISK_RESOURCE_PLAYBACK_H */
Modified: team/kmoore/stasis-http_sounds/res/stasis_http/resource_recordings.h
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/stasis_http/resource_recordings.h?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/stasis_http/resource_recordings.h (original)
+++ team/kmoore/stasis-http_sounds/res/stasis_http/resource_recordings.h Tue May 14 09:11:32 2013
@@ -190,18 +190,4 @@
*/
void stasis_http_unmute_recording(struct ast_variable *headers, struct ast_unmute_recording_args *args, struct stasis_http_response *response);
-/*
- * JSON models
- *
- * Recording
- * - id: string (required)
- * StoredRecording
- * - durationSeconds: int
- * - time: Date
- * - id: string (required)
- * - formats: List[string] (required)
- * LiveRecording
- * - id: string (required)
- */
-
#endif /* _ASTERISK_RESOURCE_RECORDINGS_H */
Modified: team/kmoore/stasis-http_sounds/res/stasis_http/resource_sounds.h
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/res/stasis_http/resource_sounds.h?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/res/stasis_http/resource_sounds.h (original)
+++ team/kmoore/stasis-http_sounds/res/stasis_http/resource_sounds.h Tue May 14 09:11:32 2013
@@ -66,16 +66,4 @@
*/
void stasis_http_get_stored_sound(struct ast_variable *headers, struct ast_get_stored_sound_args *args, struct stasis_http_response *response);
-/*
- * JSON models
- *
- * Sound
- * - text: string
- * - id: string (required)
- * - formats: List[FormatLangPair] (required)
- * FormatLangPair
- * - language: string (required)
- * - format: string (required)
- */
-
#endif /* _ASTERISK_RESOURCE_SOUNDS_H */
Modified: team/kmoore/stasis-http_sounds/rest-api-templates/make_stasis_http_stubs.py
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/rest-api-templates/make_stasis_http_stubs.py?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/rest-api-templates/make_stasis_http_stubs.py (original)
+++ team/kmoore/stasis-http_sounds/rest-api-templates/make_stasis_http_stubs.py Tue May 14 09:11:32 2013
@@ -47,6 +47,12 @@
'stasis_http/resource_{{name}}.h'),
Transform(rel('stasis_http_resource.c.mustache'),
'stasis_http/resource_{{name}}.c', False),
+ Transform(rel('res_stasis_json_resource.c.mustache'),
+ 'res_stasis_json_{{name}}.c'),
+ Transform(rel('res_stasis_json_resource.exports.mustache'),
+ 'res_stasis_json_{{name}}.exports.in'),
+ Transform(rel('stasis_json_resource.h.mustache'),
+ 'stasis_json/resource_{{name}}.h'),
]
RESOURCES_TRANSFORMS = [
Modified: team/kmoore/stasis-http_sounds/rest-api-templates/res_stasis_http_resource.c.mustache
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/rest-api-templates/res_stasis_http_resource.c.mustache?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/rest-api-templates/res_stasis_http_resource.c.mustache (original)
+++ team/kmoore/stasis-http_sounds/rest-api-templates/res_stasis_http_resource.c.mustache Tue May 14 09:11:32 2013
@@ -49,9 +49,6 @@
#include "asterisk/module.h"
#include "asterisk/stasis_app.h"
#include "stasis_http/resource_{{name}}.h"
-{{#has_events}}
-#include "asterisk/stasis_channels.h"
-{{/has_events}}
{{#apis}}
{{#operations}}
@@ -101,89 +98,6 @@
{{> rest_handler}}
{{/root_path}}
-{{#has_events}}
-{{#events}}
-{{> event_function_decl}}
- )
-{
- RAII_VAR(struct ast_json *, message, NULL, ast_json_unref);
- RAII_VAR(struct ast_json *, event, NULL, ast_json_unref);
-{{#has_properties}}
- struct ast_json *validator;
-{{/has_properties}}
-{{#channel}}
- int ret;
-{{/channel}}
-{{#bridge}}
-{{^channel}}
- int ret;
-{{/channel}}
-{{/bridge}}
-
-{{#channel}}
- ast_assert(channel_snapshot != NULL);
-{{/channel}}
-{{#bridge}}
- ast_assert(bridge_snapshot != NULL);
-{{/bridge}}
-{{#has_properties}}
- ast_assert(blob != NULL);
-{{#channel}}
- ast_assert(ast_json_object_get(blob, "channel") == NULL);
-{{/channel}}
-{{#bridge}}
- ast_assert(ast_json_object_get(blob, "bridge") == NULL);
-{{/bridge}}
- ast_assert(ast_json_object_get(blob, "type") == NULL);
-{{#properties}}
-
- validator = ast_json_object_get(blob, "{{name}}");
- if (validator) {
- /* do validation? XXX */
-{{#required}}
- } else {
- /* fail message generation if the required parameter doesn't exist */
- return NULL;
-{{/required}}
- }
-{{/properties}}
-
- event = ast_json_deep_copy(blob);
-{{/has_properties}}
-{{^has_properties}}
-
- event = ast_json_object_create();
-{{/has_properties}}
- if (!event) {
- return NULL;
- }
-
-{{#channel}}
- ret = ast_json_object_set(event,
- "channel", ast_channel_snapshot_to_json(channel_snapshot));
- if (ret) {
- return NULL;
- }
-
-{{/channel}}
-{{#bridge}}
- ret = ast_json_object_set(event,
- "bridge", ast_bridge_snapshot_to_json(bridge_snapshot));
- if (ret) {
- return NULL;
- }
-
-{{/bridge}}
- message = ast_json_pack("{s: o}", "{{c_id}}", ast_json_ref(event));
- if (!message) {
- return NULL;
- }
-
- return ast_json_ref(message);
-}
-
-{{/events}}
-{{/has_events}}
static int load_module(void)
{
stasis_app_ref();
Modified: team/kmoore/stasis-http_sounds/rest-api-templates/stasis_http_resource.h.mustache
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/rest-api-templates/stasis_http_resource.h.mustache?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
--- team/kmoore/stasis-http_sounds/rest-api-templates/stasis_http_resource.h.mustache (original)
+++ team/kmoore/stasis-http_sounds/rest-api-templates/stasis_http_resource.h.mustache Tue May 14 09:11:32 2013
@@ -64,48 +64,5 @@
{{/operations}}
{{/apis}}
-{{#has_events}}
-struct ast_channel_snapshot;
-struct ast_bridge_snapshot;
-
-{{#events}}
-/*!
- * \brief {{description}}
-{{#notes}}
- *
- * {{{notes}}}
-{{/notes}}
- *
-{{#channel}}
- * \param channel {{#channel_desc}}{{channel_desc}}{{/channel_desc}}{{^channel_desc}}The channel to be used to generate this event{{/channel_desc}}
-{{/channel}}
-{{#bridge}}
- * \param bridge {{#bridge_desc}}{{bridge_desc}}{{/bridge_desc}}{{^bridge_desc}}The bridge to be used to generate this event{{/bridge_desc}}
-{{/bridge}}
-{{#has_properties}}
- * \param blob JSON blob containing the following parameters:
-{{/has_properties}}
-{{#properties}}
- * - {{name}}: {{type}} {{#description}}- {{description}}{{/description}}{{#required}} (required){{/required}}
-{{/properties}}
- *
- * \retval NULL on error
- * \retval JSON (ast_json) describing the event
- */
-{{> event_function_decl}}
- );
-
-{{/events}}
-{{/has_events}}
-/*
- * JSON models
- *
-{{#models}}
- * {{id}}
-{{#properties}}
- * - {{name}}: {{type}}{{#required}} (required){{/required}}
-{{/properties}}
-{{/models}} */
-
#endif /* _ASTERISK_RESOURCE_{{name_caps}}_H */
{{/api_declaration}}
Modified: team/kmoore/stasis-http_sounds/tests/test_res_stasis.c
URL: http://svnview.digium.com/svn/asterisk/team/kmoore/stasis-http_sounds/tests/test_res_stasis.c?view=diff&rev=388686&r1=388685&r2=388686
==============================================================================
[... 12 lines stripped ...]
More information about the asterisk-commits
mailing list