[asterisk-commits] branch oej/bug2617 r18160 - in
/team/oej/bug2617: ./ apps/app_meetme.c
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Fri Apr 7 01:16:07 MST 2006
Author: oej
Date: Fri Apr 7 03:16:04 2006
New Revision: 18160
URL: http://svn.digium.com/view/asterisk?rev=18160&view=rev
Log:
Fix strange conflict in app_meetme
Modified:
team/oej/bug2617/ (props changed)
team/oej/bug2617/apps/app_meetme.c
Propchange: team/oej/bug2617/
------------------------------------------------------------------------------
automerge = http://edvina.net/training/
Propchange: team/oej/bug2617/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Fri Apr 7 03:16:04 2006
@@ -1,1 +1,1 @@
-/branches/1.2:1-17962
+/branches/1.2:1-18159
Modified: team/oej/bug2617/apps/app_meetme.c
URL: http://svn.digium.com/view/asterisk/team/oej/bug2617/apps/app_meetme.c?rev=18160&r1=18159&r2=18160&view=diff
==============================================================================
--- team/oej/bug2617/apps/app_meetme.c (original)
+++ team/oej/bug2617/apps/app_meetme.c Fri Apr 7 03:16:04 2006
@@ -1,7 +1,7 @@
/*
* Asterisk -- An open source telephony toolkit.
*
- * Copyright (C) 1999 - 2005, Digium, Inc.
+ * Copyright (C) 1999 - 2006, Digium, Inc.
*
* Mark Spencer <markster at digium.com>
*
@@ -70,8 +70,9 @@
"If the conference number is omitted, the user will be prompted to enter\n"
"one. \n"
"User can exit the conference by hangup, or if the 'p' option is specified, by pressing '#'.\n"
-"Please note: A ZAPTEL INTERFACE MUST BE INSTALLED FOR CONFERENCING TO WORK!\n\n"
-
+"Please note: The Zaptel kernel modules and at least one hardware driver (or ztdummy)\n"
+" must be present for conferencing to operate properly. In addition, the chan_zap\n"
+" channel driver must be loaded for the 'i' and 'r' options to operate at all.\n\n"
"The option string may contain zero or more of the following characters:\n"
" 'a' -- set admin mode\n"
" 'A' -- set marked mode\n"
@@ -1621,7 +1622,8 @@
return ret;
}
-static struct ast_conference *find_conf(struct ast_channel *chan, char *confno, int make, int dynamic, char *dynamic_pin)
+static struct ast_conference *find_conf(struct ast_channel *chan, char *confno, int make, int dynamic, char *dynamic_pin,
+ struct ast_flags *confflags)
{
struct ast_config *cfg;
struct ast_variable *var;
@@ -1703,6 +1705,21 @@
dynamic_pin[0] = '\0';
}
+ if (cnf) {
+ if (confflags && !cnf->chan &&
+ !ast_test_flag(confflags, CONFFLAG_QUIET) &&
+ ast_test_flag(confflags, CONFFLAG_INTROUSER)) {
+ ast_log(LOG_WARNING, "No Zap channel available for conference, user introduction disabled (is chan_zap loaded?)\n");
+ ast_clear_flag(confflags, CONFFLAG_INTROUSER);
+ }
+
+ if (confflags && !cnf->chan &&
+ ast_test_flag(confflags, CONFFLAG_RECORDCONF)) {
+ ast_log(LOG_WARNING, "No Zap channel available for conference, conference recording disabled (is chan_zap loaded?)\n");
+ ast_clear_flag(confflags, CONFFLAG_RECORDCONF);
+ }
+ }
+
return cnf;
}
@@ -1736,7 +1753,8 @@
AST_STANDARD_APP_ARGS(args, localdata);
- conf = find_conf(chan, args.confno, 0, 0, NULL);
+ confnum = strsep(&localdata,"|");
+ conf = find_conf(chan, confnum, 0, 0, NULL, NULL);
if (conf)
count = conf->users;
else
@@ -1926,7 +1944,7 @@
}
if (!ast_strlen_zero(confno)) {
/* Check the validity of the conference */
- cnf = find_conf(chan, confno, 1, dynamic, the_pin);
+ cnf = find_conf(chan, confno, 1, dynamic, the_pin, &confflags);
if (!cnf) {
res = ast_streamfile(chan, "conf-invalid", chan->language);
if (!res)
More information about the asterisk-commits
mailing list