public void Ejecutar() { int puerto = Convert.ToInt32(ConfigurationManager.AppSettings["puerto"]); ServerSocket servidor = new ServerSocket(puerto); Console.WriteLine("S: Levantando servidor en puerto {0}", puerto); if (servidor.Iniciar()) { while (true) { Console.WriteLine("S: Esperando Cliente.."); Socket cliente = servidor.ObtenerCliente(); Console.WriteLine("S: Cliente recibido"); ClienteCom clienteCom = new ClienteCom(cliente); HebraCliente clienteThread = new HebraCliente(clienteCom); Thread t = new Thread(new ThreadStart(clienteThread.Ejecutar)); t.IsBackground = true; t.Start(); } } else { Console.WriteLine("Error, no se puede levantar server en {0}", puerto); } }
static void Main(string[] args) { int puerto = Convert.ToInt32(ConfigurationManager.AppSettings["puerto"]); Console.WriteLine("Iniciando Servidor en puerto {0}", puerto); ServerSocket servidor = new ServerSocket(puerto); if (servidor.Iniciar()) { Console.WriteLine("[Info] Servidor iniciado correctamente."); while (true) { Console.WriteLine("[Info] Esperando Cliente..."); Socket socketcliente = servidor.ObtenerCliente(); ClienteCom cliente = new ClienteCom(socketcliente); cliente.Escribir("Hola Mundo cliente, dime tu nombre:"); string respuesta = cliente.Leer(); Console.WriteLine("[Cliente] {0}", respuesta); cliente.Escribir("Chao, loh vimoh " + respuesta); cliente.Desconectar(); } } else { Console.WriteLine("[Error] El puerto {0} está en uso", puerto); } }
static void Main(string[] args) { int puerto = Convert.ToInt32(ConfigurationManager.AppSettings["puerto"]); Console.WriteLine("Iniciando Servidor en puerto{0} ", puerto); ServerSocket servidor = new ServerSocket(puerto); if (servidor.Iniciar()) { //OK, puede conectar Console.WriteLine("Servidor Iniciando"); while (true) //Solicitando clientes infinitamente { Console.WriteLine("Esperando Cliente..."); Socket socketCliente = servidor.ObtenerCliente(); ClienteCom cliente = new ClienteCom(socketCliente); cliente.Escribir("Hola Mundo cliente, dime tu nombre : "); string respuesta = cliente.Leer(); Console.WriteLine("El cliente dice: {0} ", respuesta); cliente.Escribir("Chaolin , nos vemos " + respuesta); cliente.Desconectar(); } } else { Console.WriteLine("Error, el puerto{0} es en uso ", puerto); } }
static void Main(string[] args) { int puerto = Convert.ToInt32(ConfigurationManager.AppSettings["puerto"]); Console.WriteLine("Iniciando Servidor en puerto {0}", puerto); ServerSocket servidor = new ServerSocket(puerto); if (servidor.Iniciar()) { //OK puede conectar Console.WriteLine("Servidor iniciado"); while (true) { Console.WriteLine("Esperando Cliente..."); Socket socketCliente = servidor.ObtenerCliente(); //Construir el mecanismo para escribirle y leerle ClienteCom cliente = new ClienteCom(socketCliente); //aqui ira el protocolo de comunicacion, para ambos luego conocerlo cliente.Escribir("Hola Mundo cliente, dime tu nombre???"); string respuesta = cliente.Leer(); Console.WriteLine("El cliente dijo: {0} ", respuesta); cliente.Escribir("Chaoo loco nos vemos otro dia" + respuesta); cliente.Desconectar(); } } else { Console.WriteLine("Error, el puerto {0} es en uso", puerto); } }
/// <summary> /// Inicia una conversación con un Cliente hasta que algun /// extremo de la comunicación se despida, con un chao /// </summary> /// <param name="clienteCom"></param> static void GenerarComunicacion(ClienteCom clienteCom) { bool terminar = false; while (!terminar) { string mensaje = clienteCom.Leer(); if (mensaje != null) { Console.WriteLine("C:{0}", mensaje); if (mensaje.ToLower() == "chao") { terminar = true; } else { Console.Write("Ingrese Respuesta:"); mensaje = Console.ReadLine().Trim(); clienteCom.Escribir(mensaje); if (mensaje.ToLower() == "chao") { terminar = true; } } } else { terminar = false; } } clienteCom.Desconectar(); }
static void Main(string[] args) { int puerto = Convert.ToInt32(ConfigurationManager.AppSettings["puerto"]); Console.WriteLine("Levantando servidor en puerto {0}", puerto); ServerSocket serverSocket = new ServerSocket(puerto); if (serverSocket.Iniciar()) { while (true) { //luego de iniciar el servidor queda esperando.... Console.WriteLine("Esperando clientes..."); Socket socket = serverSocket.ObtenerCliente(); Console.WriteLine("Cliente recibido"); // comunicarse con el cliente ClienteCom clienteCom = new ClienteCom(socket); GenerarComunicacion(clienteCom); } } else { Console.WriteLine("Error al tomar posesion del puerto{0}", puerto); } }
static void Main(string[] args) { int puerto = Convert.ToInt32(ConfigurationManager.AppSettings["puerto"]); Console.WriteLine("Iniciando Servidor en puerto {0}", puerto); ServerSocket servidor = new ServerSocket(puerto); if (servidor.Iniciar()) { //Ok, pude conectar Console.WriteLine("Servidor iniciado"); //Solicitando clientes infinitamente while (true) { Console.WriteLine("Esperando Cliente"); Socket socketCliente = servidor.ObtenerCliente(); //Construir el mecanismo para escribirle y leerle ClienteCom cliente = new ClienteCom(socketCliente); //aqui está el protocolo de comunicación, ambos deben conocerlo cliente.Escribir("Hola Mundo cliente, dime tu nombre:"); string respuesta = cliente.Leer(); Console.WriteLine("El cliente mandó:{0}", respuesta); cliente.Escribir("Chao, loh vimoh " + respuesta); cliente.Desconectar(); } } else { Console.WriteLine("Error, el puerto {0} está en uso", puerto); } }
static void Main(string[] args) { Console.ForegroundColor = ConsoleColor.Blue; int puerto = Convert.ToInt32(ConfigurationManager.AppSettings["puerto"]); Console.WriteLine("Iniciando Servidor en la ip 10.22.42.192 en puerto {0}", puerto); ServerSocket servidor = new ServerSocket(puerto); if (servidor.Iniciar()) { Console.WriteLine("Servidor iniciado"); while (true) { Console.WriteLine("Esperando Cliente..."); Socket socketCliente = servidor.ObtenerCliente(); ClienteCom cliente = new ClienteCom(socketCliente); RegistrosDALArchivos registro = new RegistrosDALArchivos(); string mensaje; List <string> mensajes = new List <string>(); try { while (true) { Console.WriteLine("Esperando mensaje..."); mensaje = cliente.Leer(); mensajes.Add("C;" + mensaje); if (mensaje.ToLower() == "chao") { throw new Exception(); } Console.WriteLine("[Cliente] {0}", mensaje); Console.Write("Escriba un mensaje\n> "); mensaje = Console.ReadLine().Trim(); cliente.Escribir(mensaje); mensajes.Add("S;" + mensaje); if (mensaje.ToLower() == "chao") { throw new Exception(); } } } catch (Exception ex) { cliente.Desconectar(); registro.GenerarRegistro(mensajes); Console.WriteLine("[Info] Cliente se a desconectado"); } } } else { Console.WriteLine("Error, el puerto {0} está en uso", puerto); } }
public void Levantar() { int puerto = Convert.ToInt32(ConfigurationManager.AppSettings["puerto"]); ServerSocket servidor = new ServerSocket(puerto); Console.WriteLine("Se está levantando el Server en puerto {0}", puerto); if (servidor.Iniciar()) { while (true) { Console.WriteLine("Esperando Cliente..."); Socket cliente = servidor.ObtenerCliente(); ClienteCom clienteCom = new ClienteCom(cliente); HebraCliente clienteHebra = new HebraCliente(clienteCom); Thread t = new Thread(new ThreadStart(clienteHebra.Ejecutar)); } } }
public HebraCliente(ClienteCom clienteCom) { this.clienteCom = clienteCom; }