-
Cómo hacer un chat sin necesidad de Java
-
El lenguaje de programación Java no es el único lenguaje que puede utilizar para utilizar conexiones a equipos remotos. Muchas otras implementaciones de programación contienen la capacidad de crear tomas de corriente y de transferencia de datos. Python, por ejemplo, es un lenguaje de gran alcance y una alternativa a Java para programadores que desean implementar aplicaciones rápidamente. Con sus funciones y bibliotecas incorporadas, se puede crear un servidor de chat sencilla para recibir mensajes desde otro equipo
Instrucciones
1 Crear un objeto socket y enlazarlo a un puerto para que pueda escuchar los mensajes entrantes:
soc = socket.socket (socket.AF_INET, socket.SOCK_STREAM)
soc.bind (( '127.0.0.1', 5432))
soc.listen (5)2 Definir la clase para recibir mensajes. Esto se basa en la biblioteca "threading" para que se pueda ejecutar en segundo plano de otras aplicaciones:
clase ChatThread (threading.Thread):
def __init__(self,c):
threading.Thread.__init__(self)
self.conn = c
self.stopIt=False3 Definir el método "run", que se ejecuta cuando un hilo del tipo "ChatThread" ejecuta:
def run (auto):
while not self.stopIt:
msg = self.message_recv()
print 'recieved-> ',msg4 Definir una clase de recepción de mensajes, que se ejecuta como parte del método "run". Esta espera mensajes y devuelve el mensaje una vez recibido:
message_recv def (auto):
data = self.conn.recv(SIZE)
self.conn.send('OK')
msg = self.conn.recv(int(data))
return msg5 Obtener una conexión de socket y crear un hilo ChatThread:
c1, a1 = soc.accept ()
thr = ChatThread (c1)
thr.start ()
= emisor socket.socket (socket.AF_INET, socket.SOCK_STREAM)
soc.bind (( '127.0.0.1', 5433))
sender.send ( 'mensaje')