Ejemplo n.º 1
0
        /// <summary>
        /// 添加消息
        /// </summary>
        /// <param name="type"></param>
        /// <param name="msg"></param>
        private void AddMessage(MessageVer msg, string baseMsg)
        {
            switch (msg.Type)
            {
            case "chat":
            {
                msgAddChat(msg.User, msg.Msg);
                break;
            }

            case "auth":
            {
                MsgAddSystem("验证登录成功", null);
                break;
            }

            case "members":
            {
                Dispatcher.BeginInvoke(DispatcherPriority.Normal, (ThreadStart) delegate()
                    {
                        Members.Visibility = Visibility.Visible;
                        MembersText.Text   = (int.Parse(msg.User) - 1).ToString();
                    });
                break;
            }

            case "join":
            {
                Dispatcher.BeginInvoke(DispatcherPriority.Normal, (ThreadStart) delegate()
                    {
                        if (int.Parse(msg.Msg) >= int.Parse(MembersText.Text))
                        {
                            MsgAddSystem(msg.User + " 进入了房间", null);
                        }
                        else if (int.Parse(msg.Msg) < int.Parse(MembersText.Text))
                        {
                            MsgAddSystem(msg.User + " 退出了房间", null);
                        }
                        MembersText.Text = msg.Msg;
                    });
                break;
            }

            default:
            {
                Log.AddLog("N2Viewer", "未知消息类型:" + baseMsg);
                break;
            }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 序列化消息
        /// </summary>
        /// <param name="msg"></param>
        private void ChangeMessage(string msg)
        {
            if (msg == "" || msg == null)
            {
                Log.AddLog("N2Viewer", "空消息!");
                return;
            }
            List <string> baseMsg = new List <string>();

            if (msg.IndexOf(";") >= 0)
            {
                baseMsg = new List <string>
                {
                    msg.Substring(0, msg.IndexOf(";")),
                    msg.Substring(msg.IndexOf(";") + 1)
                };
            }
            else
            {
                baseMsg = new List <string>
                {
                    msg,
                    ""
                };
            }
            baseMsg = new List <string>
            {
                baseMsg[0].Split(' ')[0],
                baseMsg[0].Split(' ')[1],
                baseMsg[1],
                "false"
            };
            if (baseMsg[1] == "0")
            {
                baseMsg[3] = "true";
            }
            MessageVer msgInfo = new MessageVer(
                baseMsg[0],
                baseMsg[1],
                baseMsg[2],
                baseMsg[3]
                );

            AddMessage(msgInfo, msg);
        }