Merged revisions 61805 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r61805 | file | 2007-04-25 15:21:54 -0400 (Wed, 25 Apr 2007) | 10 lines

Merged revisions 61804 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r61804 | file | 2007-04-25 14:52:50 -0400 (Wed, 25 Apr 2007) | 2 lines

Merge rewritten group counting support. No more storing data on the variable list of the channels. That was bad, mmmk? (issue #7497 reported by sabbathbh)

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@61806 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Joshua Colp
2007-04-25 19:27:42 +00:00
parent f5d4a16cda
commit 8b2b3e172b
5 changed files with 162 additions and 128 deletions

View File

@@ -205,7 +205,12 @@ int ast_unlock_path(const char *path);
/*! Read a file into asterisk*/
char *ast_read_textfile(const char *file);
#define GROUP_CATEGORY_PREFIX "GROUP"
struct ast_group_info {
struct ast_channel *chan;
char *category;
char *group;
AST_LIST_ENTRY(ast_group_info) list;
};
/*! Split a group string into group and category, returning a default category if none is provided. */
int ast_app_group_split_group(const char *data, char *group, int group_max, char *category, int category_max);
@@ -219,6 +224,18 @@ int ast_app_group_get_count(const char *group, const char *category);
/*! Get the current channel count of all groups that match the specified pattern and category. */
int ast_app_group_match_get_count(const char *groupmatch, const char *category);
/*! Discard all group counting for a channel */
int ast_app_group_discard(struct ast_channel *chan);
/*! Lock the group count list */
int ast_app_group_list_lock(void);
/*! Get the head of the group count list */
struct ast_group_info *ast_app_group_list_head(void);
/*! Unlock the group count list */
int ast_app_group_list_unlock(void);
/*!
\brief Define an application argument
\param name The name of the argument