##// END OF EJS Templates
Monitoring test
Monitoring test

File last commit:

r165:166
r262:263
Show More
library.py
208 lines | 5.9 KiB | text/x-python | PythonLexer
Fedora 10 no deja instalar modulo tftp
r41 #import tftpy
murco
-Se organizó la estructura de directorios....
r19 import socket
Actualizacion del directorio
r25
murco
-Se organizó la estructura de directorios....
r19 class UDPComm:
__HEADER = "ABS"
Modificaciones a scripts python de cliente y servidor UDP
r27 def __init__(self, ipSource, ipDestino, portDestino, asServer=False):
murco
-Se organizó la estructura de directorios....
r19
self.ipSource = ipSource
self.ipDestino = ipDestino
self.portDestino = portDestino
Modificaciones a scripts python de cliente y servidor UDP
r27 self.addr = (ipDestino,portDestino)
r60 self.answer = "none" #test
r54 self.mode = "none"
r92
murco
-Se organizó la estructura de directorios....
r19
self.openSocket(asServer)
def openSocket(self, asServer):
Modificaciones a scripts python de cliente y servidor UDP
r27 #self.socket_c = socket.socket(AF_INET,SOCK_DGRAM)
self.socket_c = socket.socket(socket.AF_INET, socket.SOCK_DGRAM,0)
# self.socket_c.connect((self.ipDestino, self.portDestino))
murco
-Se organizó la estructura de directorios....
r19
if asServer:
self.configAsServer()
r54 self.mode = "server"
murco
-Se organizó la estructura de directorios....
r19 else:
self.configAsClient()
r54 self.mode = "client"
murco
-Se organizó la estructura de directorios....
r19
def configAsClient(self):
Modificaciones a scripts python de cliente y servidor UDP
r27 #Configurar broadcast
self.socket_c.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
murco
-Se organizó la estructura de directorios....
r19
def configAsServer(self):
Modificaciones a scripts python de cliente y servidor UDP
r27 self.socket_c.bind(self.addr)
print "\nServer initialized"
murco
-Se organizó la estructura de directorios....
r19
r46 def waitData(self, nbytes = 16384):
murco
-Se organizó la estructura de directorios....
r19
r46 print "\nWaiting some data"
trama_rx, self.answer = self.socket_c.recvfrom(nbytes)
r55 print "\nThis socket has received some data from:"
r54 print self.answer
murco
-Se organizó la estructura de directorios....
r19 ipSource, ipDestino, cmd, data = self.__getTrama(trama_rx)
return ipSource, ipDestino, cmd, data
Modificaciones a scripts python de cliente y servidor UDP
r27
r46 def sendData(self, cmd, data):
Modificaciones a scripts python de cliente y servidor UDP
r27
r54 if self.portDestino == 7000:
trama_tx = self.__HEADER + ":" + str(self.ipSource) + ":" + str(self.ipDestino) + ":" + str(cmd) + ":" + str(data) + ":"
else:
trama_tx = data
Modificaciones a scripts python de cliente y servidor UDP
r27
r54 if self.mode == "client":
destiny = self.addr
else:
destiny = self.answer
r46 # Send messages
r54 if(self.socket_c.sendto(trama_tx, destiny)):
r55 print "Sending message:[" + trama_tx + "] to " + str(destiny)
murco
-Se organizó la estructura de directorios....
r19
def __getTrama(self, trama):
Modificaciones a scripts python de cliente y servidor UDP
r27 FrameList = trama.split(':')
header = FrameList[0]
ipSource = FrameList[1]
ipDestino = FrameList[2]
cmd = FrameList[3]
data = FrameList[4]
trash = FrameList[5]
murco
-Se organizó la estructura de directorios....
r19
return ipSource, ipDestino, cmd, data
r61 class TCPComm:
r92 __HEADER = "JRO"
__TYPE = "ABS"
r61
def __init__(self, ipSource, ipDestino, portDestino, asServer=False):
self.ipSource = ipSource
self.ipDestino = ipDestino
self.portDestino = portDestino
self.addr = (ipDestino,portDestino)
r63
self.sc = "none"
r61 self.answer = "none" #test
self.mode = "none"
r92 self.len = 0
self.crc = 0
r61
self.openSocket(asServer)
def openSocket(self, asServer):
#self.socket_c = socket.socket(AF_INET,SOCK_DGRAM)
r92 # self.socket_c = socket.socket()
r61 # self.socket_c.connect((self.ipDestino, self.portDestino))
if asServer:
r92 self.socket_c = socket.socket()
# self.configAsServer()
self.socket_c.bind(self.addr)
r61 self.mode = "server"
else:
r92 # self.configAsClient()
self.mode = "client" #Socket is opened at the sendData function
r61
r92 # def configAsClient(self):
r61 #Buscar broadcast TCP
# self.socket_c.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
r92 # self.socket_c.connect(self.addr)
# pass
r61
r92 # def configAsServer(self):
#
# self.socket_c.bind(self.addr)
r61
r70 def waitData(self, nbytes = 1024):
r61
r70 print "\nWaiting some client."
r61 if self.mode == "client":
r70 # Short data through ethernet
r63 trama_rx = self.socket_c.recv(nbytes)
r61 else:
r70 self.socket_c.listen(1)
sc, addr = self.socket_c.accept()
self.sc = sc
self.answer = addr
# Big data through ethernet
trama_rx = ""
while True:
tmp = self.sc.recv(nbytes)
trama_rx = trama_rx + tmp
if trama_rx[-4:] == "quit":
break
r61
r92 print "\nThis socket has received some data."
r61
ipSource, ipDestino, cmd, data = self.__getTrama(trama_rx)
return ipSource, ipDestino, cmd, data
r92 def sendData(self, cmd, data, id):
r61
r92 trama_tx = self.__HEADER + ":" + self.__TYPE + ":" + str(self.ipSource) + ":" + str(self.ipDestino) + ":" + str(self.len) + ":" + str(cmd) + ":" + str(data) + ":" + str(self.crc)
r61 if self.portDestino == 7000:
r92 trama_tx = trama_tx + ":" + "quit"
r61 # Send messages
if self.mode == "client":
r92 host = "192.168.1." + str(id)
self.socket_c.connect((host, self.portDestino))
r61 self.socket_c.send(trama_tx)
else:
r70 self.sc.send(trama_tx)
r61 print "Sending message:[" + trama_tx + "]"
def __getTrama(self, trama):
FrameList = trama.split(':')
header = FrameList[0]
r92 TypeOfInstrument = FrameList[1]
ipSource = FrameList[2]
ipDestino = FrameList[3]
len = FrameList[4]
cmd = FrameList[5]
data = FrameList[6]
crc = FrameList[7]
trash = FrameList[8]
r61
return ipSource, ipDestino, cmd, data
r70 def close_socket(self):
r63 self.socket_c.close()
r92 def open_socket(self):
self.socket_c = socket.socket()
Fedora 10 no deja instalar modulo tftp
r41 #class FTPComm:
#
# ftp_servidor = 'ftp.servidor.com'
# ftp_usuario = 'miusuario'
# ftp_clave = 'miclave'
# ftp_raiz = '/public_html'
#
# def __init__(self):
#
# self.client = tftpy.TftpClient(self.ftp_servidor, '69')
#
#
# def sendFile(self, filename):
#
# self.client.upload(filename)
#
#if __name__ == '__main__':
#
# obj = FTPComm()
murco
-Se organizó la estructura de directorios....
r19
Actualizacion del directorio
r25
murco
-Se organizó la estructura de directorios....
r19