예제 #1
0
        public static void BotListener()
        {
            Socket BotSocket = Program.tcpListener.AcceptSocket();

            if (BotSocket.Connected)
            {
                Acciones.alConectar(BotSocket);

                NetworkStream redStream      = new NetworkStream(BotSocket);
                StreamWriter  escritorStream = new StreamWriter(redStream);
                StreamReader  lectorStream   = new StreamReader(redStream);

                Acciones.Handshake(BotSocket, escritorStream);

                while (MantenerConexion)
                {
                    string mensajeRecibido = lectorStream.ReadLine();

                    Recibidos.Interpretar(mensajeRecibido, lectorStream, escritorStream, BotSocket);
                }

                lectorStream.Close();
                redStream.Close();
                escritorStream.Close();
            }

            Acciones.alDesconectar(BotSocket);
            Consola.LeerInput();
        }
예제 #2
0
        public static void BotClientListener(TcpClient tcpListener)
        {
            NetworkStream redStream      = tcpListener.GetStream();
            StreamReader  lectorStream   = new StreamReader(redStream);
            StreamWriter  escritorStream = new StreamWriter(redStream);

            escritorStream.BaseStream.ReadTimeout = 200;
            lectorStream.BaseStream.ReadTimeout   = 200;

            try
            {
                string mensajeRecibido = String.Empty;
                string mensajeEnviado  = String.Empty;
                {
                    while (recibiendo)
                    {
                        mensajeRecibido = lectorStream.ReadLine();

                        Recibidos.Interpretar(mensajeRecibido, lectorStream);
                        Enviados.Nuevo(mensajeEnviado, escritorStream);
                    }

                    Enviados.Interpretar(mensajeEnviado, escritorStream);
                }
            }
            catch (Exception e)
            {
                Consola.Escribir($"\t( Error ) Excepción leyendo del servidor: {e.Message}", ConsoleColor.Red);
            }

            redStream.Close();
        }