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)