switch_mutex_unlock(conference->member_mutex);
}
+static void conference_list_count_only(conference_obj_t *conference, switch_stream_handle_t *stream)
+{
+ switch_assert(conference != NULL);
+ switch_assert(stream != NULL);
+
+ stream->write_function(stream, "%d\n", conference->count);
+}
+
static switch_status_t conf_api_sub_mute(conference_member_t *member, switch_stream_handle_t *stream, void *data)
{
switch_event_t *event;
char *d = ";";
int pretty = 0;
int summary = 0;
+ int countonly = 0;
int argofs = (argc >= 2 && strcasecmp(argv[1], "list") == 0); /* detect being called from chat vs. api */
if (argv[1 + argofs]) {
pretty = 1;
} else if (strcasecmp(argv[1 + argofs], "summary") == 0) {
summary = 1;
+ } else if (strcasecmp(argv[1 + argofs], "count") == 0) {
+ countonly = 1;
}
}
switch_mutex_unlock(globals.hash_mutex);
} else {
count++;
- if (pretty) {
+ if (countonly) {
+ conference_list_count_only(conference, stream);
+ } else if (pretty) {
conference_list_pretty(conference, stream);
} else {
conference_list(conference, stream, d);