private void ReceiveCallback(IAsyncResult AR) { Socket current = (Socket)AR.AsyncState; int received; try { received = current.EndReceive(AR); } catch (SocketException) { current.Close(); clientSockets.Remove(current); return; } byte[] recBuf = new byte[received]; // Cấp phát mảng động Array.Copy(buffer, recBuf, received); string text = Encoding.UTF8.GetString(recBuf); var Packet = new ManagePacket(); resolve(Packet, current); current.BeginReceive(buffer, 0, 2048, SocketFlags.None, ReceiveCallback, current); }
private void resolve(ManagePacket packet, Socket current) { switch (packet.msgtype) { case "User": break; case "Room": break; case "Action": switch (packet.msgcontent) { case "Connect": break; case "Disconnect": break; } break; } }