Revision
14432
Author
anthm
Date
2009-07-30 12:21:52 -0500 (Thu, 30 Jul 2009)

Log Message

supress talk start/stop events during mute but still send mute-detect events

Modified Paths

Diff

Modified: freeswitch/trunk/src/mod/applications/mod_conference/mod_conference.c (14431 => 14432)


--- freeswitch/trunk/src/mod/applications/mod_conference/mod_conference.c	2009-07-30 16:20:47 UTC (rev 14431)
+++ freeswitch/trunk/src/mod/applications/mod_conference/mod_conference.c	2009-07-30 17:21:52 UTC (rev 14432)
@@ -1825,7 +1825,7 @@
 						}
 						switch_mutex_unlock(member->conference->member_mutex);
 
-						if (test_eflag(member->conference, EFLAG_START_TALKING) &&
+						if (test_eflag(member->conference, EFLAG_START_TALKING) && switch_test_flag(member, MFLAG_CAN_SPEAK) &&
 							switch_event_create_subclass(&event, SWITCH_EVENT_CUSTOM, CONF_EVENT_MAINT) == SWITCH_STATUS_SUCCESS) {
 							conference_add_event_member_data(member, event);
 							switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Action", "start-talking");
@@ -1853,7 +1853,7 @@
 				if (hangunder_hits) {
 					hangunder_hits--;
 				}
-				if (switch_test_flag(member, MFLAG_TALKING)) {
+				if (switch_test_flag(member, MFLAG_TALKING) && switch_test_flag(member, MFLAG_CAN_SPEAK) {
 					switch_event_t *event;
 					if (++hangover_hits >= hangover) {
 						hangover_hits = hangunder_hits = 0;