Example #1
0
        private void ReceiveMsg()
        {
            MessageInfo domianBindInfo = new MessageInfo()
            {
                Id = Guid.NewGuid().ToString(),
                MessageType = MsgType.Login
                  ,
                Key = MsgType.Login.ToString(),
                Body = UserName
            };
            SendMessageToServer(domianBindInfo);

            while (client_Socket != null && client_Socket.Connected)
            {
                try
                {
                    byte[] buffer = new byte[2000];
                    int count = client_Socket.Receive(buffer);
                    if (count == 0)
                    {
                        continue;
                    }
                    MessageInfo info = buffer.ToMessageInfo();
                    ResponseToServer(info);
                    if (ProcessData != null)
                    {
                        ProcessData(info);
                    }
                }
                catch (Exception ex)
                {
                    client_Socket.Close();
                }
            }
        }
Example #2
0
 private void SendMessageToServer(MessageInfo returnInfo)
 {
     client_Socket.Send(returnInfo.ToBytes());
 }
Example #3
0
        //private void ProcessData(MessageInfo info)
        //{
        //    if (info.MessageType==MsgType.Info)
        //    {
        //        //if ()
        //        //{

        //        //} info.Body
        //    }
        //}

        private void ResponseToServer(MessageInfo info)
        {
            MessageInfo returnInfo = new MessageInfo()
            {
                Id = info.Id
            };

            switch (info.MessageType)
            {
                case MsgType.Simple:
                    returnInfo.MessageType = MsgType.ACK;
                    break;
                case MsgType.Info:
                    returnInfo.MessageType = MsgType.ACK;
                    break;
                case MsgType.XT:
                    returnInfo.MessageType = MsgType.XT;
                    break;
                default:
                    break;
            }

            returnInfo.Key = returnInfo.MessageType.ToString();
            returnInfo.Body = "";
            SendMessageToServer(returnInfo);

        }