From e54c549840fd772b812d0581fa95822eef5cfde9 Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Mon, 14 Aug 2006 21:16:17 +0000 Subject: [PATCH] add bridge indication to conferences so sip disables the async rtp since we already have dual threaded i/o git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2293 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/mod/applications/mod_conference/mod_conference.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/mod/applications/mod_conference/mod_conference.c b/src/mod/applications/mod_conference/mod_conference.c index 6a856a2ab1..5e7ccb8b45 100644 --- a/src/mod/applications/mod_conference/mod_conference.c +++ b/src/mod/applications/mod_conference/mod_conference.c @@ -2171,6 +2171,7 @@ static void conference_function(switch_core_session_t *session, char *data) switch_xml_t cxml = NULL, cfg = NULL, profile = NULL, profiles = NULL; char *flags_str; member_flag_t uflags = MFLAG_CAN_SPEAK | MFLAG_CAN_HEAR; + switch_core_session_message_t msg = {0}; channel = switch_core_session_get_channel(session); assert(channel != NULL); @@ -2404,9 +2405,19 @@ static void conference_function(switch_core_session_t *session, char *data) } switch_set_flag_locked((&member), MFLAG_RUNNING | uflags); + msg.from = __FILE__; + + /* Tell the channel we are going to be in a bridge */ + msg.message_id = SWITCH_MESSAGE_INDICATE_BRIDGE; + switch_core_session_receive_message(session, &msg); + /* Run the confernece loop */ conference_loop(&member); + /* Tell the channel we are no longer going to be in a bridge */ + msg.message_id = SWITCH_MESSAGE_INDICATE_UNBRIDGE; + switch_core_session_receive_message(session, &msg); + /* Remove the caller from the conference */ conference_del_member(member.last_conference, &member);