Example #1
0
        //处理WebSocket消息路由
        private void HandleMessage(WebSocket_Msg msg)
        {
            var client = WebSocket_Coons.Get(msg.SendClientId);

            switch (msg.Action.ToLower())
            {
            case "@*join*@":
                client.Channel = msg.MsgStr;
                break;

            case "@*leave*@":
                //置空Channel,模拟关闭连接
                client.Channel = "";
                client.WebSocket.CloseAsync(WebSocketCloseStatus.NormalClosure, "", CancellationToken.None);
                WebSocket_Coons.Remove(client);
                break;

            default:
                break;
            }
            WebSocket_Server.HandleMsg_Event(msg);
        }
Example #2
0
        public static Task SendMessageAsync(string coonID, string msgStr, string action = "", string msgTag = "")
        {
            WebSocket_Coon coon = WebSocket_Coons.Get(coonID);

            return(SendMessageAsync(coon, msgStr, action, msgTag));
        }