From 15e88575fc3097ff0868ce0905a21a5b9c591bbe Mon Sep 17 00:00:00 2001 From: Mikkel Krautz Date: Sun, 10 Apr 2011 15:00:35 +0200 Subject: [PATCH] Always show correct name for registered users. --- client.go | 16 ---------------- message.go | 4 ++-- server.go | 13 ++++++------- 3 files changed, 8 insertions(+), 25 deletions(-) diff --git a/client.go b/client.go index 3bfa6fb..a5ab3d5 100644 --- a/client.go +++ b/client.go @@ -547,19 +547,3 @@ func (client *Client) sendChannelTree(channel *Channel) { client.sendChannelTree(subchannel) } } - -// Send the userlist to a client. -func (client *Client) sendUserList() { - server := client.server - for _, client := range server.clients { - err := client.sendProtoMessage(MessageUserState, &mumbleproto.UserState{ - Session: proto.Uint32(client.Session), - Name: proto.String(client.Username), - ChannelId: proto.Uint32(0), - }) - if err != nil { - log.Printf("Unable to send UserList") - continue - } - } -} diff --git a/message.go b/message.go index ca0d710..f92582d 100644 --- a/message.go +++ b/message.go @@ -723,9 +723,9 @@ func (server *Server) handleUserStateMessage(client *Client, msg *Message) { txtmsg := &mumbleproto.TextMessage{} txtmsg.TreeId = append(txtmsg.TreeId, uint32(0)) if target.Recording { - txtmsg.Message = proto.String(fmt.Sprintf("User '%s' started recording", target.Username)) + txtmsg.Message = proto.String(fmt.Sprintf("User '%s' started recording", target.ShownName())) } else { - txtmsg.Message = proto.String(fmt.Sprintf("User '%s' stopped recording", target.Username)) + txtmsg.Message = proto.String(fmt.Sprintf("User '%s' stopped recording", target.ShownName())) } server.broadcastProtoMessageWithPredicate(MessageTextMessage, txtmsg, func(client *Client) bool { diff --git a/server.go b/server.go index 09cb196..374f912 100644 --- a/server.go +++ b/server.go @@ -585,20 +585,19 @@ func (server *Server) updateCodecVersions() { } func (server *Server) sendUserList(client *Client) { - for _, user := range server.clients { - if user.state != StateClientReady { + for _, connectedClient := range server.clients { + if connectedClient.state != StateClientReady { continue } - if user == client { + if connectedClient == client { continue } err := client.sendProtoMessage(MessageUserState, &mumbleproto.UserState{ - Session: proto.Uint32(user.Session), - Name: proto.String(user.Username), - ChannelId: proto.Uint32(uint32(user.Channel.Id)), + Session: proto.Uint32(connectedClient.Session), + Name: proto.String(connectedClient.ShownName()), + ChannelId: proto.Uint32(uint32(connectedClient.Channel.Id)), }) - log.Printf("ChanId = %v", user.Channel.Id) if err != nil { // Server panic?