From 3a92673356e9f083dc152be0eb18c70ae3b72a29 Mon Sep 17 00:00:00 2001 From: Joshua Colp Date: Wed, 11 Mar 2009 13:44:42 +0000 Subject: [PATCH] Don't play the "you are about to be placed into the conference" and "the leader has left the conference" sounds if the quiet option is enabled. (reported by Vadim Lebedev on the asterisk-dev list) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@181210 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_confbridge.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/apps/app_confbridge.c b/apps/app_confbridge.c index 058f581ec1..3531b684be 100644 --- a/apps/app_confbridge.c +++ b/apps/app_confbridge.c @@ -271,11 +271,13 @@ static void post_join_marked(struct conference_bridge *conference_bridge, struct } /* Next play the audio file stating they are going to be placed into the conference */ - ao2_unlock(conference_bridge); - ast_autoservice_start(conference_bridge_user->chan); - play_sound_file(conference_bridge, "conf-placeintoconf"); - ast_autoservice_stop(conference_bridge_user->chan); - ao2_lock(conference_bridge); + if (!ast_test_flag(&conference_bridge_user->flags, OPTION_QUIET)) { + ao2_unlock(conference_bridge); + ast_autoservice_start(conference_bridge_user->chan); + play_sound_file(conference_bridge, "conf-placeintoconf"); + ast_autoservice_stop(conference_bridge_user->chan); + ao2_lock(conference_bridge); + } /* Finally iterate through and unmute them all */ AST_LIST_TRAVERSE(&conference_bridge->users_list, other_conference_bridge_user, list) { @@ -505,11 +507,13 @@ static void leave_conference_bridge(struct conference_bridge *conference_bridge } /* Play back the audio prompt saying the leader has left the conference */ - ao2_unlock(conference_bridge); - ast_autoservice_start(conference_bridge_user->chan); - play_sound_file(conference_bridge, "conf-leaderhasleft"); - ast_autoservice_stop(conference_bridge_user->chan); - ao2_lock(conference_bridge); + if (!ast_test_flag(&conference_bridge_user->flags, OPTION_QUIET)) { + ao2_unlock(conference_bridge); + ast_autoservice_start(conference_bridge_user->chan); + play_sound_file(conference_bridge, "conf-leaderhasleft"); + ast_autoservice_stop(conference_bridge_user->chan); + ao2_lock(conference_bridge); + } /* Now on to starting MOH if needed */ AST_LIST_TRAVERSE(&conference_bridge->users_list, other_participant, list) {