summaryrefslogtreecommitdiff
path: root/main/manager_channels.c
diff options
context:
space:
mode:
authorKinsey Moore <kmoore@digium.com>2013-04-12 21:11:02 +0000
committerKinsey Moore <kmoore@digium.com>2013-04-12 21:11:02 +0000
commit7f885dc31d01a3da0bbe785f30afad31cece10d7 (patch)
tree7c9f6deef33581453ae2fd0c928b11748c0e8f76 /main/manager_channels.c
parentfcbb9f0c8dd43dde059abf2deb2ed09b2c4e4539 (diff)
Expose channel snapshot manager blob generation
These functions are already used in one branch (jrose's parking branch) and will soon be used in other branches as well. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@385522 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/manager_channels.c')
-rw-r--r--main/manager_channels.c39
1 files changed, 9 insertions, 30 deletions
diff --git a/main/manager_channels.c b/main/manager_channels.c
index 89ccd4af8..ce306e4bb 100644
--- a/main/manager_channels.c
+++ b/main/manager_channels.c
@@ -232,18 +232,7 @@ static struct stasis_message_router *channel_state_router;
</managerEvent>
***/
-/*!
- * \brief Generate the AMI message body from a channel snapshot
- * \internal
- *
- * \param snapshot the channel snapshot for which to generate an AMI message
- * body
- * \param suffix the suffix to append to the channel fields
- *
- * \retval NULL on error
- * \retval ast_str* on success (must be ast_freed by caller)
- */
-static struct ast_str *manager_build_channel_state_string_suffix(
+struct ast_str *ast_manager_build_channel_state_string_suffix(
const struct ast_channel_snapshot *snapshot,
const char *suffix)
{
@@ -294,20 +283,10 @@ static struct ast_str *manager_build_channel_state_string_suffix(
return out;
}
-/*!
- * \brief Generate the AMI message body from a channel snapshot
- * \internal
- *
- * \param snapshot the channel snapshot for which to generate an AMI message
- * body
- *
- * \retval NULL on error
- * \retval ast_str* on success (must be ast_freed by caller)
- */
-static struct ast_str *manager_build_channel_state_string(
+struct ast_str *ast_manager_build_channel_state_string(
const struct ast_channel_snapshot *snapshot)
{
- return manager_build_channel_state_string_suffix(snapshot, "");
+ return ast_manager_build_channel_state_string_suffix(snapshot, "");
}
/*! \brief Struct containing info for an AMI channel event to send out. */
@@ -553,7 +532,7 @@ static void channel_snapshot_update(void *data, struct stasis_subscription *sub,
/* If we haven't already, build the channel event string */
if (!channel_event_string) {
channel_event_string =
- manager_build_channel_state_string(new_snapshot);
+ ast_manager_build_channel_state_string(new_snapshot);
if (!channel_event_string) {
return;
}
@@ -572,7 +551,7 @@ static void channel_varset(struct ast_channel_blob *obj)
const char *value = ast_json_string_get(ast_json_object_get(obj->blob, "value"));
if (obj->snapshot) {
- channel_event_string = manager_build_channel_state_string(obj->snapshot);
+ channel_event_string = ast_manager_build_channel_state_string(obj->snapshot);
} else {
channel_event_string = ast_str_create(35);
ast_str_set(&channel_event_string, 0,
@@ -614,7 +593,7 @@ static void channel_userevent(struct ast_channel_blob *obj)
eventname = ast_json_string_get(ast_json_object_get(obj->blob, "eventname"));
body = ast_json_string_get(ast_json_object_get(obj->blob, "body"));
- channel_event_string = manager_build_channel_state_string(obj->snapshot);
+ channel_event_string = ast_manager_build_channel_state_string(obj->snapshot);
if (!channel_event_string) {
return;
@@ -654,7 +633,7 @@ static void channel_hangup_request(struct ast_channel_blob *obj)
return;
}
- channel_event_string = manager_build_channel_state_string(obj->snapshot);
+ channel_event_string = ast_manager_build_channel_state_string(obj->snapshot);
if (!channel_event_string) {
return;
@@ -721,13 +700,13 @@ static void channel_dial_cb(void *data, struct stasis_subscription *sub,
/* Peer is required - otherwise, who are we dialing? */
ast_assert(peer != NULL);
- peer_event_string = manager_build_channel_state_string_suffix(peer, "Dest");
+ peer_event_string = ast_manager_build_channel_state_string_suffix(peer, "Dest");
if (!peer_event_string) {
return;
}
if (caller) {
- caller_event_string = manager_build_channel_state_string(caller);
+ caller_event_string = ast_manager_build_channel_state_string(caller);
if (!caller_event_string) {
return;
}