mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-02 02:18:31 +00:00
app_confbridge: Make non-admin users join a muted conference muted.
ASTERISK-20987 #close Reported by: hristo Change-Id: Ic61a2b524ab3a4cfadf227fc6b3506527bc03f38
This commit is contained in:
@@ -1310,6 +1310,13 @@ static struct confbridge_conference *join_conference_bridge(const char *conferen
|
|||||||
|
|
||||||
ao2_lock(conference);
|
ao2_lock(conference);
|
||||||
|
|
||||||
|
/* Determine if the new user should join the conference muted. */
|
||||||
|
if (ast_test_flag(&user->u_profile, USER_OPT_STARTMUTED)
|
||||||
|
|| (!ast_test_flag(&user->u_profile, USER_OPT_ADMIN) && conference->muted)) {
|
||||||
|
/* Set user level mute request. */
|
||||||
|
user->muted = 1;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Suspend any MOH until the user actually joins the bridge of
|
* Suspend any MOH until the user actually joins the bridge of
|
||||||
* the conference. This way any pre-join file playback does not
|
* the conference. This way any pre-join file playback does not
|
||||||
@@ -1727,12 +1734,6 @@ 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 */
|
/* Look for a conference bridge matching the provided name */
|
||||||
if (!(conference = join_conference_bridge(args.conf_name, &user))) {
|
if (!(conference = join_conference_bridge(args.conf_name, &user))) {
|
||||||
pbx_builtin_setvar_helper(chan, "CONFBRIDGE_RESULT", "FAILED");
|
pbx_builtin_setvar_helper(chan, "CONFBRIDGE_RESULT", "FAILED");
|
||||||
|
@@ -334,10 +334,12 @@ type=bridge
|
|||||||
; upon release of the video src.
|
; upon release of the video src.
|
||||||
|
|
||||||
; admin_toggle_mute_participants ; This action allows an administrator to toggle the mute
|
; admin_toggle_mute_participants ; This action allows an administrator to toggle the mute
|
||||||
; state for all non-admins within a conference. All
|
; state for all non-admins within a conference.
|
||||||
; admin users are unaffected by this option. Note that all
|
; Subsequent non-admins joining a muted conference will
|
||||||
; users, regardless of their admin status, are notified
|
; start muted. All admin users are unaffected by this
|
||||||
; that the conference is muted.
|
; option. Note that all users, regardless of their admin
|
||||||
|
; status, are notified that the conference is muted when
|
||||||
|
; the state is toggled.
|
||||||
|
|
||||||
; participant_count ; This action plays back the number of participants currently
|
; participant_count ; This action plays back the number of participants currently
|
||||||
; in a conference
|
; in a conference
|
||||||
|
Reference in New Issue
Block a user