Пример #1
0
        public static async Task Start()
        {
            using var server = new EasyTcpServer();
            var socket = server.BaseSocket; // Get baseSocket, null when server is disposed

            // Start server on given port (default address: "0.0.0.0")
            server.Start(Port);

            // Start server on given port and address
            server.Start("0.0.0.0", Port);
            server.Start(IPAddress.Any, Port);

            // Send message to all connected clients
            server.SendAll("Hello clients!");

            // Get copy of list with connected clients
            var connectedClientsList = server.GetConnectedClients();
            var connectedSocketsList = server.GetConnectedSockets();

            // Get amount of connected clients
            var connectedClientsCount = server.ConnectedClientsCount;

            server.OnDataReceive += (sender, message) =>
            {
                // Get client
                var client = message.Client;

                // Get endpoint or ip address of client
                var endPoint = client.GetEndPoint();
                var ip       = client.GetIp();

                // Use all the other clientUtil on client
                client.Send("Hello from server!");

                // Determines whether message is compressed
                var isCompressed = message.IsCompressed();

                /* Decompress message,
                 * ignored when message is not compressed
                 */
                var data = message.Decompress();
            };
        }