diff --git a/src/mod/applications/mod_conference/mod_conference.c b/src/mod/applications/mod_conference/mod_conference.c index 2310aad293..71451a83a3 100644 --- a/src/mod/applications/mod_conference/mod_conference.c +++ b/src/mod/applications/mod_conference/mod_conference.c @@ -814,12 +814,19 @@ static switch_status_t conference_del_member(conference_obj_t *conference, confe switch_event_t *event; conference_file_node_t *member_fnode; switch_speech_handle_t *member_sh; + const char *exit_sound; switch_assert(conference != NULL); switch_assert(member != NULL); switch_thread_rwlock_wrlock(member->rwlock); + if (member->session && (exit_sound = switch_channel_get_variable(switch_core_session_get_channel(member->session), "conference_exit_sound"))) { + conference_play_file(conference, (char *)exit_sound, CONF_DEFAULT_LEADIN, + switch_core_session_get_channel(member->session), !switch_test_flag(conference, CFLAG_WAIT_MOD) ? 0 : 1); + } + + lock_member(member); member_fnode = member->fnode; member_sh = member->sh;