public TcpClientTests()
        {
            _ip = "127.0.0.1";

            _kingServer = ServerManager.GetInstance(NetworkListenerType.TCP).KingServer;
            _kingClient = ClientManager.GetInstance().KingClient;
        }
        public WebSocketClientTests()
        {
            _ip = "127.0.0.1";

            _kingServer = ServerManager.GetInstance(NetworkListenerType.WSBinary).KingServer;
            _kingClient = ClientManager.GetInstance().KingClient;
        }
Exemple #3
0
        // Use this for initialization
        void Start()
        {
            client = new KingClient();
            client.Connect(ip);

            if (client.HasConnected)
            {
                Debug.Log("Client  started!");
            }
            else
            {
                Debug.LogError("Could not start client!");
            }
        }
Exemple #4
0
        /// <summary>
        /// This method is responsible for main execution of console application.
        /// </summary>
        /// <param name="args">The string args received by parameters.</param>
        static void Main(string[] args)
        {
            try
            {
                var client = new KingClient();
                client.PutHandler <MyPacketHandlerOne, MyPackets>(MyPackets.PacketOne);
                client.Connect("127.0.0.1");

                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
            }
        }
Exemple #5
0
        /// <summary>
        /// This method is responsible for main execution of console application.
        /// </summary>
        /// <param name="args">The string args received by parameters.</param>
        static void Main(string[] args)
        {
            try
            {
                var client = new KingClient();
                client.MessageReceivedHandler = OnMessageReceived;
                client.Connect("127.0.0.1");

                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
            }
        }
Exemple #6
0
    // Use this for initialization
    void Start()
    {
        netPlayersDictionary = new Dictionary <int, NetPlayer>();

        client = new KingClient();
        client.MessageReceivedHandler = OnMessageReceived;
        client.Connect(ip);

        if (client.HasConnected)
        {
            Debug.Log("Client  started!");
        }
        else
        {
            Debug.LogError("Could not start client!");
        }
    }
Exemple #7
0
        /// <summary>
        /// This method is responsible for main execution of console application.
        /// </summary>
        /// <param name="args">The string args received by parameters.</param>
        static void Main(string[] args)
        {
            try
            {
                _networkListenerType = NetworkListenerType.UDP;

                var client = new KingClient();
                client.MessageReceivedHandler = OnMessageReceived;
                client.Connect("127.0.0.1", 7171, _networkListenerType);

                if (client.HasConnected)
                {
                    Console.WriteLine("client.HasConnected");
                }

                new Thread(() =>
                {
                    Thread.Sleep(5000);

                    using (var buffer = KingBufferWriter.Create())
                    {
                        if (_networkListenerType != NetworkListenerType.WSText)
                        {
                            buffer.Write(MyPackets.PacketOne);
                        }

                        buffer.Write("Testinho1");

                        client.SendMessage(buffer);
                    }
                }).Start();

                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
            }
        }
Exemple #8
0
        /// <summary>
        /// Method responsible for start the clients.
        /// </summary>
        /// <param name="ip">The ip address from the server.</param>
        /// <param name="clientConnections">The number of client connections.</param>
        public static void StartClients(string ip, int clientConnections)
        {
            var kingBuffer = new KingBufferBase();

            kingBuffer.WriteString("Sometimes we just need a good networking library");

            _stopwatch = Stopwatch.StartNew();

            var clientFrequency = 14;

            var clients = new List <KingClient>();

            for (int i = 0; i < clientConnections; ++i)
            {
                var client = new KingClient();

                client.MessageReceivedHandler = OnMessageReceived;

                client.Connect(ip);
                clients.Add(client);

                Thread.Sleep(15);
            }

            Console.WriteLine("started all clients");

            var timer = new System.Timers.Timer(1000.0 / clientFrequency);

            timer.Elapsed += (object sender, ElapsedEventArgs e) =>
            {
                foreach (var client in clients)
                {
                    if (client.HasConnected)
                    {
                        // send 2 messages each time
                        client.SendMessage(kingBuffer);
                        client.SendMessage(kingBuffer);

                        _messagesSent += 1;
                    }
                }

                // report every 10 seconds
                if (_stopwatch.ElapsedMilliseconds > 1000 * 10)
                {
                    long bandwithIn  = _dataReceived * 1000 / (_stopwatch.ElapsedMilliseconds * 1024);
                    long bandwithOut = _messagesSent * _bufferLength * 1000 / (_stopwatch.ElapsedMilliseconds * 1024);

                    Console.WriteLine(string.Format("Client in={0} ({1} KB/s)  out={2} ({3} KB/s) bufferL={4}",
                                                    _messagesReceived,
                                                    bandwithIn,
                                                    _messagesSent,
                                                    bandwithOut,
                                                    _bufferLength));
                    _stopwatch.Stop();
                    _stopwatch        = Stopwatch.StartNew();
                    _messagesSent     = 0;
                    _dataReceived     = 0;
                    _messagesReceived = 0;
                }
            };

            timer.AutoReset = true;
            timer.Enabled   = true;

            Console.ReadLine();
            timer.Stop();
            timer.Dispose();
        }
Exemple #9
0
 public ClientManager()
 {
     KingClient = new KingClient();
 }
        /// <summary>
        /// Method responsible for start the clients.
        /// </summary>
        /// <param name="ip">The ip address from the server.</param>
        /// <param name="clientConnections">The number of client connections.</param>
        public static void StartClients(string ip, int clientConnections)
        {
            _networkListenerType = NetworkListenerType.WSBinary;

            var kingBuffer = KingBufferWriter.Create();

            //kingBuffer.Write((byte)0);
            kingBuffer.Write("Sometimes we just need a good networking library");

            _stopwatch = Stopwatch.StartNew();

            var clientFrequency = 14;

            var clients = new List <KingClient>();

            for (int i = 0; i < clientConnections; ++i)
            {
                var client = new KingClient();

                client.MessageReceivedHandler = OnMessageReceived;

                client.Connect(ip, 7171, _networkListenerType);
                clients.Add(client);

                Thread.Sleep(15);
            }

            Console.WriteLine("started all clients");

            new Thread(() =>
            {
                Thread.Sleep(10000);

                foreach (var client in clients)
                {
                    //if (client.HasConnected)
                    //{
                    // send 2 messages each time

                    var bytes = Encoding.GetEncoding("UTF-8").GetBytes("Testinho");

                    kingBuffer.Reset();

                    kingBuffer.Write(bytes);

                    client.SendMessage(kingBuffer);
                    //client.SendMessage(kingBuffer);

                    _messagesSent += 1;
                    //}
                }
            }).Start();

            //foreach (var client in clients)
            //{
            //    if (client.HasConnected)
            //    {
            //        // send 2 messages each time
            //        client.SendMessage(kingBuffer);
            //        //client.SendMessage(kingBuffer);

            //        _messagesSent += 1;
            //    }
            //}

            var timer = new System.Timers.Timer(1000.0 / clientFrequency);

            timer.Elapsed += (object sender, ElapsedEventArgs e) =>
            {
                //foreach (var client in clients)
                //{
                //    if (client.HasConnected)
                //    {
                //        // send 2 messages each time
                //        client.SendMessage(kingBuffer);
                //        //client.SendMessage(kingBuffer);

                //        _messagesSent += 1;
                //    }
                //}

                //// report every 10 seconds
                //if (_stopwatch.ElapsedMilliseconds > 1000 * 10)
                //{
                //    long bandwithIn = _dataReceived * 1000 / (_stopwatch.ElapsedMilliseconds * 1024);
                //    long bandwithOut = _messagesSent * _bufferLength * 1000 / (_stopwatch.ElapsedMilliseconds * 1024);

                //    Console.WriteLine(string.Format("Client in={0} ({1} KB/s)  out={2} ({3} KB/s) bufferL={4}",
                //                             _messagesReceived,
                //                             bandwithIn,
                //                             _messagesSent,
                //                             bandwithOut,
                //                             _bufferLength));
                //    _stopwatch.Stop();
                //    _stopwatch = Stopwatch.StartNew();
                //    _messagesSent = 0;
                //    _dataReceived = 0;
                //    _messagesReceived = 0;
                //}
            };

            timer.AutoReset = true;
            timer.Enabled   = true;

            Console.ReadLine();
            timer.Stop();
            timer.Dispose();
        }