confbridge: announce to the marked users when they join an empty conference

Currently the file sound_only_person is not played when a marked
user (with announce_only_user=yes) joins an empty conference.

This patch fixes it.

ASTERISK-28201 #close

Change-Id: I85b67687e6b220939c3af8091d83a70a7b174cf4
This commit is contained in:
Alexei Gradinari 2018-12-07 15:22:29 -05:00
parent 1f8062c6a6
commit cb1a08bdcb
4 changed files with 7 additions and 8 deletions

View File

@ -1360,7 +1360,7 @@ int conf_handle_inactive_waitmarked(struct confbridge_user *user)
return 0;
}
int conf_handle_only_unmarked(struct confbridge_user *user)
int conf_handle_only_person(struct confbridge_user *user)
{
/* If audio prompts have not been quieted or this prompt quieted play it on out */
if (!ast_test_flag(&user->u_profile, USER_OPT_QUIET | USER_OPT_NOONLYPERSON)) {

View File

@ -56,7 +56,7 @@ static void join_unmarked(struct confbridge_user *user)
{
conf_add_user_active(user->conference, user);
conf_handle_first_join(user->conference);
conf_add_post_join_action(user, conf_handle_only_unmarked);
conf_add_post_join_action(user, conf_handle_only_person);
conf_change_state(user, CONF_STATE_SINGLE);
}
@ -73,6 +73,7 @@ static void join_marked(struct confbridge_user *user)
{
conf_add_user_marked(user->conference, user);
conf_handle_first_join(user->conference);
conf_add_post_join_action(user, conf_handle_only_person);
conf_change_state(user, CONF_STATE_SINGLE_MARKED);
}

View File

@ -51,7 +51,7 @@ struct confbridge_state *CONF_STATE_INACTIVE = &STATE_INACTIVE;
static void join_unmarked(struct confbridge_user *user)
{
conf_add_user_active(user->conference, user);
conf_add_post_join_action(user, conf_handle_only_unmarked);
conf_add_post_join_action(user, conf_handle_only_person);
conf_change_state(user, CONF_STATE_SINGLE);
}

View File

@ -490,13 +490,11 @@ void conf_handle_first_join(struct confbridge_conference *conference);
*/
int conf_handle_inactive_waitmarked(struct confbridge_user *user);
/*! \brief Handle actions whenever an unmarked user joins an inactive conference
* \note These actions seem like they could apply just as well to a marked user
* and possibly be made to happen any time transitioning to a single state.
/*! \brief Handle actions whenever an user joins an empty conference
*
* \param user The unmarked user
* \param user The user
*/
int conf_handle_only_unmarked(struct confbridge_user *user);
int conf_handle_only_person(struct confbridge_user *user);
/*! \brief Handle when a conference moves to having more than one active participant
* \param conference The conference bridge with more than one active participant