[MM-43850] Separate leave_team events for associated user and team (#21231)
* Separate leave_team events for associated user and team * Remove unnecessary change of sending mode * Remove redundant get, set of message.broadcast Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
3e928f57fb
Коммит
ed3f3fec46
@@ -191,11 +191,25 @@ func (ts *TeamService) JoinUserToTeam(team *model.Team, user *model.User) (*mode
|
||||
// RemoveTeamMember removes the team member from the team. This method sends
|
||||
// the websocket message before actually removing so the user being removed gets it.
|
||||
func (ts *TeamService) RemoveTeamMember(teamMember *model.TeamMember) error {
|
||||
message := model.NewWebSocketEvent(model.WebsocketEventLeaveTeam, teamMember.TeamId, "", "", nil, "")
|
||||
message.Add("user_id", teamMember.UserId)
|
||||
message.Add("team_id", teamMember.TeamId)
|
||||
ts.wh.Publish(message)
|
||||
/*
|
||||
MM-43850: send leave_team event to user using `ReliableClusterSend` to improve safety
|
||||
*/
|
||||
// message for other team members
|
||||
omitUsers := make(map[string]bool, 1)
|
||||
omitUsers[teamMember.UserId] = true
|
||||
messageTeam := model.NewWebSocketEvent(model.WebsocketEventLeaveTeam, teamMember.TeamId, "", "", omitUsers, "")
|
||||
messageTeam.Add("user_id", teamMember.UserId)
|
||||
messageTeam.Add("team_id", teamMember.TeamId)
|
||||
ts.wh.Publish(messageTeam)
|
||||
|
||||
// message for teamMember.UserId
|
||||
messageUser := model.NewWebSocketEvent(model.WebsocketEventLeaveTeam, "", "", teamMember.UserId, nil, "")
|
||||
messageUser.Add("user_id", teamMember.UserId)
|
||||
messageUser.Add("team_id", teamMember.TeamId)
|
||||
|
||||
ts.wh.Publish(messageUser)
|
||||
|
||||
// delete team member
|
||||
teamMember.Roles = ""
|
||||
teamMember.DeleteAt = model.GetMillis()
|
||||
|
||||
|
||||
Ссылка в новой задаче
Block a user