static void Main(string[] args) { TcpClient socket = new TcpClient(); Console.WriteLine("Enter host ip:"); string ip = Console.ReadLine(); if (ip == "") ip = "127.0.0.1"; try { socket.Connect(ip, 30000); } catch (Exception ex) { Console.WriteLine(ex.Message); Console.Read(); return; } Random rnd = new Random(DateTime.Now.Second); Client client = new Client(socket); client.MessageReceived += (c, m) => { if (m.Header.PacketType == 2) { Console.WriteLine("Success login"); } }; while (true) { Console.ReadLine(); try { Console.WriteLine("SEND MESSGAE!"); string username = "******"; string password = "******"; Message login = MessageFactory.CreateLoginMessage(username, password); client.PushMessage(login); //Console.WriteLine(client.PullMessage()); } catch (Exception ex) { Console.WriteLine(ex.Message); } } }
void AcceptCallBack(IAsyncResult result) { TcpClient socket = mListener.EndAcceptTcpClient(result); Client client = new Client(socket); lock(mClientList) mClientList.Add(client); client.MessageReceived += ProccessLogin; Console.WriteLine("New connection"); try { mListener.BeginAcceptTcpClient(new AsyncCallback(AcceptCallBack), null); } catch (Exception ex) { throw ex; } }
public void ProccessLogin(Client client, Message message) { if (message.Header.PacketType == 1) client.PushMessage(new LoginSuccessMessage()); }