##// END OF EJS Templates
Client changes to return answer to the web page.
Client changes to return answer to the web page.

File last commit:

r166:167
r166:167
Show More
client3.py
99 lines | 3.2 KiB | text/x-python | PythonLexer
import library3
import os.path
class ABSClient(object):
def __init__(self,ipSource="192.168.1.117", iDSource="Clnt_01", ipDestino="192.168.1.117", iDDestino = "CeCnMod", portDestino=7000):
self.ipSource = ipSource
self.iDSource = iDSource
self.ipDestino = ipDestino
self.iDDestino = iDDestino
self.portDestino = portDestino
self.createObjects()
def createObjects(self):
self.commObj = library3.TCPComm(self.ipSource, self.iDSource, self.ipDestino, self.iDDestino, self.portDestino)
#self.wFiles = library3.FilesStuff()
def __ConnectionWithCentralControl(self, cmd, data):
self.commObj.open_socket()
self.commObj.sendData(cmd = cmd, data = data, ipDestino = self.ipDestino)
ipSource, ipDestino, cmd, output = self.commObj.waitData()
self.commObj.close_socket()
return output
# def abs2ControlModuleFormatFile(self, filename):
#
# #From matriz to control module format
# self.wFiles.toCentralControlFormat(filename)
# FileName = "CentralControlFormat.txt"
# F_Obj = open(FileName,"r")
# FileList = F_Obj.readlines()
# F_Obj.close()
# FileStr = "".join(FileList)
#
# return FileStr
def sendFile(self, filename):
data = self.__readFile(filename)
answer = self.__ConnectionWithCentralControl(cmd = "SNDF", data = data)
return answer
def changeBeam(self, newBeam):
answer = self.__ConnectionWithCentralControl(cmd = "CHGB", data = newBeam)
return answer
def __writeFile(self, filename, data):
fobj = open(filename,"w")
fobj.writelines(data)
fobj.close()
def __readFile(self, filename):
fobj = open(filename,"r")
listData = fobj.readlines()
fobj.close()
tmp = "".join(listData)
#Adding filename to the begining of the data
newfilename = os.path.split(filename)[1]
#data = filename + '\n' + tmp
data = newfilename + '\n' + tmp
return data
def getControlModuleStatus(self, data):
data = self.__ConnectionWithCentralControl(cmd = "ANST", data = data)
self.__writeFile("report.txt", data)
def getControlModulePhase(self, opt, u = "50", pw = "10"):
if opt == '0':
data = self.__ConnectionWithCentralControl(cmd = "LWPH", data = u + '/' + pw + '/')
elif opt == '1':
data = self.__ConnectionWithCentralControl(cmd = "BGPH", data = u + '/' + pw + '/')
elif opt == '2':
data = self.__ConnectionWithCentralControl(cmd = "cBPH", data = u + '/' + pw + '/')
else:
data = self.__ConnectionWithCentralControl(cmd = "cLPH", data = u + '/' + pw + '/')
# self.__writeFile("report.txt", data)
def getConnectionStatus(self):
data = self.__ConnectionWithCentralControl(cmd = "NTST", data = "none")
self.__writeFile("connection_status.txt", data)
if __name__ == '__main__':
filename = "experimento1.abs"
absObj = ABSClient()
absObj.sendFile(filename)