99 char *data,
char *
buf,
size_t len)
103 char group[80] =
"", category[80] =
"";
135 snprintf(
buf,
len,
"%d", count);
143 .
name =
"GROUP_COUNT",
149 const char *cmd,
char *data,
char *
buf,
153 char category[80] =
"";
161 snprintf(
buf,
len,
"%d", count);
169 .
name =
"GROUP_MATCH_COUNT",
176 char *data,
char *
buf,
size_t len)
208 char *data,
const char *
value)
222 snprintf(grpcat,
sizeof(grpcat),
"%s@%s",
value, data);
229 "Setting a group requires an argument (group name)\n");
241 char *data,
char *
buf,
size_t len)
244 char tmp1[1024] =
"";
245 char tmp2[1024] =
"";
258 snprintf(tmp1,
sizeof(tmp1),
"%s %s@%s", tmp2, gi->
group, gi->
category);
260 snprintf(tmp1,
sizeof(tmp1),
"%s %s", tmp2, gi->
group);
263 snprintf(tmp1,
sizeof(tmp1),
"%s@%s", gi->
group, gi->
category);
265 snprintf(tmp1,
sizeof(tmp1),
"%s", gi->
group);
277 .
name =
"GROUP_LIST",
Asterisk main include file. File version handling, generic pbx functions.
General Asterisk PBX channel definitions.
const char * ast_channel_name(const struct ast_channel *chan)
static int group_function_read(struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t len)
static int group_count_function_read(struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t len)
static int group_function_write(struct ast_channel *chan, const char *cmd, char *data, const char *value)
static struct ast_custom_function group_list_function
static struct ast_custom_function group_count_function
static struct ast_custom_function group_match_count_function
static int load_module(void)
static struct ast_custom_function group_function
static int unload_module(void)
static int group_match_count_function_read(struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t len)
static int group_list_function_read(struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t len)
static int len(struct ast_channel *chan, const char *cmd, char *data, char *buf, size_t buflen)
Application convenience functions, designed to give consistent look and feel to Asterisk apps.
int ast_app_group_get_count(const char *group, const char *category)
Get the current channel count of the specified group and category.
int ast_app_group_match_get_count(const char *groupmatch, const char *category)
Get the current channel count of all groups that match the specified pattern and category.
int ast_app_group_set_channel(struct ast_channel *chan, const char *data)
Set the group for a channel, splitting the provided data into group and category, if specified.
int ast_app_group_list_unlock(void)
Unlock the group count list.
int ast_app_group_split_group(const char *data, char *group, int group_max, char *category, int category_max)
Split a group string into group and category, returning a default category if none is provided.
struct ast_group_info * ast_app_group_list_head(void)
Get the head of the group count list.
int ast_app_group_list_rdlock(void)
Read Lock the group count list.
#define AST_LIST_NEXT(elm, field)
Returns the next entry in the list after the given entry.
Asterisk module definitions.
#define AST_MODULE_INFO_STANDARD(keystr, desc)
#define ASTERISK_GPL_KEY
The text the key() function should return.
Core PBX routines and definitions.
#define ast_custom_function_register(acf)
Register a custom function.
int ast_custom_function_unregister(struct ast_custom_function *acf)
Unregister a custom function.
static force_inline int attribute_pure ast_strlen_zero(const char *s)
void ast_copy_string(char *dst, const char *src, size_t size)
Size-limited null-terminating string copy.
Main Channel structure associated with a channel.
Data structure associated with a custom dialplan function.
struct ast_group_info::@210 group_list
struct ast_channel * chan