Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- import asyncore
- from socket import AF_INET, SOCK_STREAM
- from threading import Thread
- class TCPClient(asyncore.dispatcher_with_send):
- def __init__(self, host=("192.168.43.174", 9090)):
- asyncore.dispatcher_with_send.__init__(self)
- self.create_socket(AF_INET, SOCK_STREAM)
- self.connect(host)
- Thread(target=self.sender).start() # Nuevo hilo creado para el cliente
- def sender(self):
- # Enviar los mensajes desde un hilo aparte,
- # para que en paralelo se sigan reciban los
- # mensajes del servidor.
- while True:
- data = raw_input("\n")
- if data:
- if data.lower() == "salir":#Al recibir el mensaje de "salir" escrito, se cierra la conexion.
- break
- else:
- self.sendall(data)
- else:
- print "Debes escribir un mensaje."
- self.handle_close()
- def handle_connect(self):
- print "Has entrado al chat."
- def handle_close(self):
- print "Has salido del chat."
- self.close()
- def handle_read(self):
- """Imprimir los mensajes"""
- print self.recv(1024)#Tamaño de datos que se recibiran.
- if __name__ == "__main__":
- client = TCPClient()
- asyncore.loop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement