|
|
|
|
@ -1009,6 +1009,13 @@ void conf_update_user_mute(struct confbridge_user *user)
|
|
|
|
|
ast_channel_name(user->chan), mute_effective ? "muted" : "unmuted",
|
|
|
|
|
mute_user, mute_system);
|
|
|
|
|
user->features.mute = mute_effective;
|
|
|
|
|
ast_test_suite_event_notify("CONF_MUTE_UPDATE",
|
|
|
|
|
"Mode: %s\r\n"
|
|
|
|
|
"Conference: %s\r\n"
|
|
|
|
|
"Channel: %s",
|
|
|
|
|
mute_effective ? "muted" : "unmuted",
|
|
|
|
|
user->b_profile.name,
|
|
|
|
|
ast_channel_name(user->chan));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void conf_moh_stop(struct confbridge_user *user)
|
|
|
|
|
@ -1683,6 +1690,12 @@ static int confbridge_exec(struct ast_channel *chan, const char *data)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If the caller should be joined already muted, set the flag before we join. */
|
|
|
|
|
if (ast_test_flag(&user.u_profile, USER_OPT_STARTMUTED)) {
|
|
|
|
|
/* Set user level mute request. */
|
|
|
|
|
user.muted = 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Look for a conference bridge matching the provided name */
|
|
|
|
|
if (!(conference = join_conference_bridge(args.conf_name, &user))) {
|
|
|
|
|
pbx_builtin_setvar_helper(chan, "CONFBRIDGE_RESULT", "FAILED");
|
|
|
|
|
@ -1694,12 +1707,6 @@ static int confbridge_exec(struct ast_channel *chan, const char *data)
|
|
|
|
|
volume_adjustments[0] = ast_audiohook_volume_get(chan, AST_AUDIOHOOK_DIRECTION_READ);
|
|
|
|
|
volume_adjustments[1] = ast_audiohook_volume_get(chan, AST_AUDIOHOOK_DIRECTION_WRITE);
|
|
|
|
|
|
|
|
|
|
/* If the caller should be joined already muted, make it so */
|
|
|
|
|
if (ast_test_flag(&user.u_profile, USER_OPT_STARTMUTED)) {
|
|
|
|
|
/* Set user level mute request. */
|
|
|
|
|
user.muted = 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (ast_test_flag(&user.u_profile, USER_OPT_DROP_SILENCE)) {
|
|
|
|
|
user.tech_args.drop_silence = 1;
|
|
|
|
|
}
|
|
|
|
|
|