new Dictionary <int, RSN_Server_CallbackConfig>(); //Stores data parse types. public static RSN_Server CreateServer(RSN_Server_CallbackConfig[] callbacks, string password, Int32 port) { RSN_Server ser = new RSN_Server(); ser.password = password; TcpListener server = null; //Create a place for the server IPAddress localAddr = IPAddress.Any; //Setup the listening IP. server = new TcpListener(localAddr, port); //Create listener server.Start(); ser.server = server; //Look for new clients ser.server.BeginAcceptTcpClient(new AsyncCallback(ser.OnNewClient), ser.server); //Add new callbacks foreach (var c in callbacks) { ser.registeredDataTypes.Add(c.id, c); } //Create the get thread var getThread = new System.Threading.Thread(new System.Threading.ThreadStart(ser.GetThread)); getThread.Start(); return(ser); }
public void Respond <T>(T obj) { //Serialize string data = RSN_Tools.SerializeObject(obj); //Create a response packet and send. RSN_Server.SendDataToClient(client.stream, data, packet.id, packet.parseType, type: RSN_PacketType.EncodedMessage); }