[asterisk-commits] file: trunk r45610 - in /trunk: CHANGES apps/app_meetme.c

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Wed Oct 18 15:19:58 MST 2006


Author: file
Date: Wed Oct 18 17:19:57 2006
New Revision: 45610

URL: http://svn.digium.com/view/asterisk?rev=45610&view=rev
Log:
Just for Nicholson - here's an option, C, to Meetme that will allow it to continue in the dialplan if the person is kicked out. (issue #7994 reported by mnicholson with mods by myself)

Modified:
    trunk/CHANGES
    trunk/apps/app_meetme.c

Modified: trunk/CHANGES
URL: http://svn.digium.com/view/asterisk/trunk/CHANGES?rev=45610&r1=45609&r2=45610&view=diff
==============================================================================
--- trunk/CHANGES (original)
+++ trunk/CHANGES Wed Oct 18 17:19:57 2006
@@ -40,3 +40,5 @@
   * Extend CALLERID() function with "pres" and "ton" parameters to
      fetch string representation of calling number presentation indicator
      and numeric representation of type of calling number value.
+  * Added 'C' option to Meetme which causes a caller to continue in the dialplan
+     when kicked out.

Modified: trunk/apps/app_meetme.c
URL: http://svn.digium.com/view/asterisk/trunk/apps/app_meetme.c?rev=45610&r1=45609&r2=45610&view=diff
==============================================================================
--- trunk/apps/app_meetme.c (original)
+++ trunk/apps/app_meetme.c Wed Oct 18 17:19:57 2006
@@ -153,7 +153,9 @@
 	/*! If set, the user is a shared line appearance trunk */
 	CONFFLAG_SLA_TRUNK = (1 << 26),
 	/*! If set, the user has put us on hold */
-	CONFFLAG_HOLD = (1 << 27)
+	CONFFLAG_HOLD = (1 << 27),
+	/*! If set, the user should continue in the dialplan if kicked out */
+	CONFFLAG_KICK_CONTINUE = (1 << 28)
 };
 
 enum {
@@ -166,6 +168,7 @@
 	AST_APP_OPTION('a', CONFFLAG_ADMIN ),
 	AST_APP_OPTION('b', CONFFLAG_AGI ),
 	AST_APP_OPTION('c', CONFFLAG_ANNOUNCEUSERCOUNT ),
+	AST_APP_OPTION('C', CONFFLAG_KICK_CONTINUE),
 	AST_APP_OPTION('D', CONFFLAG_DYNAMICPIN ),
 	AST_APP_OPTION('d', CONFFLAG_DYNAMIC ),
 	AST_APP_OPTION('E', CONFFLAG_EMPTYNOPIN ),
@@ -219,6 +222,7 @@
 "             Default: conf-background.agi  (Note: This does not work with\n"
 "             non-Zap channels in the same conference)\n"
 "      'c' -- announce user(s) count on joining a conference\n"
+"      'C' -- continue in dialplan when kicked out of conference\n"
 "      'd' -- dynamically add conference\n"
 "      'D' -- dynamically add conference, prompting for a PIN\n"
 "      'e' -- select an empty conference\n"
@@ -1406,9 +1410,11 @@
 						if (!(confflags & CONFFLAG_QUIET))
 							if (!ast_streamfile(chan, "conf-leaderhasleft", chan->language))
 								ast_waitstream(chan, "");
-						if(confflags & CONFFLAG_MARKEDEXIT)
+						if (confflags & CONFFLAG_MARKEDEXIT) {
+							if (confflags & CONFFLAG_KICK_CONTINUE)
+								ret = 0;
 							break;
-						else {
+						} else {
 							ztc.confmode = ZT_CONF_CONF;
 							if (ioctl(fd, ZT_SETCONF, &ztc)) {
 								ast_log(LOG_WARNING, "Error setting conference\n");
@@ -1471,7 +1477,10 @@
 			
 			/* Leave if the last marked user left */
 			if (currentmarked == 0 && lastmarked != 0 && (confflags & CONFFLAG_MARKEDEXIT)) {
-				ret = -1;
+				if (confflags & CONFFLAG_KICK_CONTINUE)
+					ret = 0;
+				else
+					ret = -1;
 				break;
 			}
 	



More information about the asterisk-commits mailing list