1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| import asyncore, socket
# Client connecte a box domotique
class Client(asyncore.dispatcher_with_send):
def __init__(self, host, port, message):
asyncore.dispatcher.__init__(self)
self.create_socket(socket.AF_INET, socket.SOCK_DGRAM)
self.connect((host, port))
self.out_buffer = message
def handle_close(self):
self.close()
def handle_read(self):
print self.recv(1024)
#self.close()
# Serveur qui ecoute les requete a retransmettre a ma box domotique
class Serveur(asyncore.dispatcher):
def __init__(self, port):
asyncore.dispatcher.__init__(self)
self.create_socket(socket.AF_INET, socket.SOCK_DGRAM)
self.bind(('', port))
def handle_connect(self):
print "Connecte !"
def handle_read(self):
data, addr = self.recvfrom(2048)
print data
ici j'aimerais retransmettre data vers mon client
def handle_write(self):
pass
s = Serveur(18001)
c = Client('192.168.1.50', 18000, 'LOGIN')
asyncore.loop() |