|
@@ -49,21 +49,25 @@ func (manager *ClientManager) Start() {
|
|
select {
|
|
select {
|
|
case conn := <-Manager.Register:
|
|
case conn := <-Manager.Register:
|
|
log.Printf("新用户加入:%v", conn.ID)
|
|
log.Printf("新用户加入:%v", conn.ID)
|
|
|
|
+ fmt.Println("当前Client连接数:" + string(len(Manager.Clients)))
|
|
Manager.Clients[conn.ID] = conn
|
|
Manager.Clients[conn.ID] = conn
|
|
//jsonMessage, _ := json.Marshal(&Message{Content: "Successful connection to socket service"})
|
|
//jsonMessage, _ := json.Marshal(&Message{Content: "Successful connection to socket service"})
|
|
//conn.Send <- jsonMessage
|
|
//conn.Send <- jsonMessage
|
|
case conn := <-Manager.Unregister:
|
|
case conn := <-Manager.Unregister:
|
|
- //log.Printf("用户离开:%v", conn.ID)
|
|
|
|
|
|
+ log.Printf("用户离开:%v", conn.ID)
|
|
|
|
+ fmt.Println("当前Client连接数:" + string(len(Manager.Clients)))
|
|
if _, ok := Manager.Clients[conn.ID]; ok {
|
|
if _, ok := Manager.Clients[conn.ID]; ok {
|
|
//jsonMessage, _ := json.Marshal(&Message{Content: "A socket has disconnected"})
|
|
//jsonMessage, _ := json.Marshal(&Message{Content: "A socket has disconnected"})
|
|
//conn.Send <- jsonMessage
|
|
//conn.Send <- jsonMessage
|
|
close(conn.Send)
|
|
close(conn.Send)
|
|
delete(Manager.Clients, conn.ID)
|
|
delete(Manager.Clients, conn.ID)
|
|
}
|
|
}
|
|
|
|
+ fmt.Println("当前Client连接数:" + string(len(Manager.Clients)))
|
|
case message := <-Manager.Broadcast:
|
|
case message := <-Manager.Broadcast:
|
|
MessageStruct := Message{}
|
|
MessageStruct := Message{}
|
|
err := json.Unmarshal(message, &MessageStruct)
|
|
err := json.Unmarshal(message, &MessageStruct)
|
|
if err != nil {
|
|
if err != nil {
|
|
|
|
+ panic(err)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
for id, conn := range Manager.Clients {
|
|
for id, conn := range Manager.Clients {
|
|
@@ -123,7 +127,7 @@ func (c *Client) Read() {
|
|
}
|
|
}
|
|
break
|
|
break
|
|
}
|
|
}
|
|
- //log.Printf("读取到客户端的信息:%s", string(message))
|
|
|
|
|
|
+ log.Printf("读取到客户端的信息:%s", string(message))
|
|
Manager.Broadcast <- message
|
|
Manager.Broadcast <- message
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -148,7 +152,7 @@ func (c *Client) Write() {
|
|
}
|
|
}
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- //log.Printf("发送到到客户端的信息:%s", string(message))
|
|
|
|
|
|
+ log.Printf("发送到到客户端的信息:%s", string(message))
|
|
|
|
|
|
err := c.Socket.WriteMessage(websocket.TextMessage, message)
|
|
err := c.Socket.WriteMessage(websocket.TextMessage, message)
|
|
if err != nil {
|
|
if err != nil {
|