##// END OF EJS Templates
imanay -
r123:124
parent child
Show More
@@ -0,0 +1,66
1 Status of modules
No newline at end of file
2 ----------------
No newline at end of file
3 192.168.1.1 [1 1]
No newline at end of file
4 192.168.1.2 [1 1]
No newline at end of file
5 192.168.1.3 [0 0]
No newline at end of file
6 192.168.1.4 [0 0]
No newline at end of file
7 192.168.1.5 [0 0]
No newline at end of file
8 192.168.1.6 [0 0]
No newline at end of file
9 192.168.1.7 [0 0]
No newline at end of file
10 192.168.1.8 [0 0]
No newline at end of file
11 192.168.1.9 [0 0]
No newline at end of file
12 192.168.1.10 [0 0]
No newline at end of file
13 192.168.1.11 [0 0]
No newline at end of file
14 192.168.1.12 [1 1]
No newline at end of file
15 192.168.1.13 [0 0]
No newline at end of file
16 192.168.1.14 [0 0]
No newline at end of file
17 192.168.1.15 [0 0]
No newline at end of file
18 192.168.1.16 [0 0]
No newline at end of file
19 192.168.1.17 [0 0]
No newline at end of file
20 192.168.1.18 [0 0]
No newline at end of file
21 192.168.1.19 [0 0]
No newline at end of file
22 192.168.1.20 [0 0]
No newline at end of file
23 192.168.1.21 [0 0]
No newline at end of file
24 192.168.1.22 [0 0]
No newline at end of file
25 192.168.1.23 [1 1]
No newline at end of file
26 192.168.1.24 [0 0]
No newline at end of file
27 192.168.1.25 [0 0]
No newline at end of file
28 192.168.1.26 [0 0]
No newline at end of file
29 192.168.1.27 [0 0]
No newline at end of file
30 192.168.1.28 [0 0]
No newline at end of file
31 192.168.1.29 [0 0]
No newline at end of file
32 192.168.1.30 [0 0]
No newline at end of file
33 192.168.1.31 [0 0]
No newline at end of file
34 192.168.1.32 [0 0]
No newline at end of file
35 192.168.1.33 [0 0]
No newline at end of file
36 192.168.1.34 [0 0]
No newline at end of file
37 192.168.1.35 [0 0]
No newline at end of file
38 192.168.1.36 [0 0]
No newline at end of file
39 192.168.1.37 [0 0]
No newline at end of file
40 192.168.1.38 [0 0]
No newline at end of file
41 192.168.1.39 [0 0]
No newline at end of file
42 192.168.1.40 [0 0]
No newline at end of file
43 192.168.1.41 [0 0]
No newline at end of file
44 192.168.1.42 [0 0]
No newline at end of file
45 192.168.1.43 [0 0]
No newline at end of file
46 192.168.1.44 [0 0]
No newline at end of file
47 192.168.1.45 [0 0]
No newline at end of file
48 192.168.1.46 [0 0]
No newline at end of file
49 192.168.1.47 [0 0]
No newline at end of file
50 192.168.1.48 [0 0]
No newline at end of file
51 192.168.1.49 [0 0]
No newline at end of file
52 192.168.1.50 [0 0]
No newline at end of file
53 192.168.1.51 [0 0]
No newline at end of file
54 192.168.1.52 [0 0]
No newline at end of file
55 192.168.1.53 [0 0]
No newline at end of file
56 192.168.1.54 [0 0]
No newline at end of file
57 192.168.1.55 [0 0]
No newline at end of file
58 192.168.1.56 [0 0]
No newline at end of file
59 192.168.1.57 [0 0]
No newline at end of file
60 192.168.1.58 [0 0]
No newline at end of file
61 192.168.1.59 [0 0]
No newline at end of file
62 192.168.1.60 [0 0]
No newline at end of file
63 192.168.1.61 [0 0]
No newline at end of file
64 192.168.1.62 [0 0]
No newline at end of file
65 192.168.1.63 [0 0]
No newline at end of file
66 192.168.1.64 [0 0] No newline at end of file
@@ -1,199 +1,239
1 1 import os No newline at end of file
2 2 import library3 No newline at end of file
3 3 import time No newline at end of file
4 4 No newline at end of file
5 5 class ABSServer: No newline at end of file
6 6
7 No newline at end of file
7 def __init__(self,ipSource="localhost", ipDestino="192.168.1.117", portDestino=7000, ipDestino2="192.168.1.11", portDestino2=5500): No newline at end of file
8 8 No newline at end of file
9 9 self.ipSource = ipSource No newline at end of file
10 10 self.ipDestino = ipDestino No newline at end of file
11 11 self.portDestino = portDestino No newline at end of file
12 12 No newline at end of file
13 13 self.ipDestino2 = ipDestino2 No newline at end of file
14 14 self.portDestino2 = portDestino2 No newline at end of file
15 15 No newline at end of file
16 16 self.tx_buffer = "default"
17 No newline at end of file
17 self.rx_buffer = "default" No newline at end of file
No newline at end of file
18 self.rx_buffer = rx_buffer No newline at end of file
18 19 self.enaModules = [] No newline at end of file
19 20 No newline at end of file
20 21 self.createObjects() No newline at end of file
21 22 No newline at end of file
22 23 def createObjects(self): No newline at end of file
23 24 No newline at end of file
24 25 asServer = True No newline at end of file
25 26 self.commServerObj = library3.TCPComm("Central_Control", "CeCnMod", self.ipDestino, "CnMod01", self.portDestino, asServer) No newline at end of file
26 27 self.commClientObj = library3.TCPComm("Central_Control", "CeCnMod", self.ipDestino2, "CnMod01", self.portDestino2) No newline at end of file
27 28 No newline at end of file
28 29 def waitRequest(self): No newline at end of file
29 30 No newline at end of file
30 31 #Using rx buffer No newline at end of file
31 32 ipSource, ipDestino, cmd, self.rx_buffer = self.commServerObj.waitData() No newline at end of file
32 33 No newline at end of file
33 34 if cmd == "SNDF": No newline at end of file
34 35 datarpta = self.__sendFile2Modules(cmd = cmd) No newline at end of file
35 36 No newline at end of file
36 37 if cmd == "CHGB": No newline at end of file
37 38 datarpta = self.__changeBeam(cmd = cmd) No newline at end of file
38 39 No newline at end of file
39 40 if cmd == "ANST": No newline at end of file
40 41 self.__getControlModuleStatus(cmd = cmd) No newline at end of file
41 42 #Using tx buffer No newline at end of file
42 43 datarpta = self.tx_buffer No newline at end of file
43 44 No newline at end of file
44 45 if cmd == "NTST": No newline at end of file
45 46 #Using tx buffer No newline at end of file
46 47 datarpta = self.__getConnectionStatus(cmd = cmd) No newline at end of file
47 48 No newline at end of file
48 49 self.commServerObj.sendData(cmd=cmd, data=datarpta, ipDestino = ipSource) No newline at end of file
49 50 No newline at end of file
50 51 def checkModule(self, address): No newline at end of file
51 52 No newline at end of file
52 53 cmd = "ping -c 1 -w 1 192.168.1."+ str(address) + " >> /dev/null" No newline at end of file
53 54 status = os.system(cmd) No newline at end of file
54 55 No newline at end of file
55 56 if status == 256: No newline at end of file
56 57 return False No newline at end of file
57 58 No newline at end of file
58 59 return True No newline at end of file
59 60 No newline at end of file
60 61 def __writeReport(self, enaModules): No newline at end of file
61 62 No newline at end of file
62 63 status_array = ["Status of modules\n"] No newline at end of file
63 64 status_array.append("----------------\n") No newline at end of file
64 65 No newline at end of file
65 66 for address in range(1,65): No newline at end of file
66 67 if address in enaModules: No newline at end of file
67 68 status_array.append("192.168.1." + str(address) + " [1 1]\n") No newline at end of file
68 69 else: No newline at end of file
69 70 status_array.append("192.168.1." + str(address) + " [0 0]\n") No newline at end of file
70 71 No newline at end of file
71 72 f = open("module_status.txt","w") No newline at end of file
72 73 f.writelines(status_array) No newline at end of file
73 74 f.close() No newline at end of file
74 75 No newline at end of file
75 76 def checkAntenna(self): No newline at end of file
76 77 No newline at end of file
77 78 """ No newline at end of file
78 79 Direccion de los modulos de las antenas: No newline at end of file
79 80 No newline at end of file
80 81 Norte : 01-16 No newline at end of file
81 82 Este : 17-32 No newline at end of file
82 83 Oeste: : 33-48 No newline at end of file
83 84 Sur : 49-64 No newline at end of file
84 85 No newline at end of file
85 86 """ No newline at end of file
86 87 No newline at end of file
87 88 enaModules2 = [] No newline at end of file
88 89 No newline at end of file
89 90 for address in range(1,65): No newline at end of file
90 91 if self.checkModule(address): No newline at end of file
91 92 enaModules2.append(address) No newline at end of file
92 93 No newline at end of file
93 94 self.__writeReport(enaModules2) No newline at end of file
94 95 return enaModules2 No newline at end of file
95 96 No newline at end of file
96 97 def __ConnectionWithControlModules(self,data,cmd,id): No newline at end of file
97 98 No newline at end of file
98 99 self.commClientObj.open_socket() No newline at end of file
99 100 ip = "192.168.1." + str(id) No newline at end of file
100 101 self.commClientObj.sendData(cmd, data, ip) No newline at end of file
101 102 ipSource, ipDestino, cmd, tmp = self.commClientObj.waitData() No newline at end of file
102 103 self.commClientObj.close_socket() No newline at end of file
103 104 No newline at end of file
104 105 return tmp No newline at end of file
105 106 No newline at end of file
106 107 def __All2Blocks(self,input): No newline at end of file
107 108 No newline at end of file
108 109 rx_frame_lst = input.split('\n',2) No newline at end of file
109 110 No newline at end of file
110 111 header = rx_frame_lst[0] + "\n" No newline at end of file
111 112 control_modules_str = rx_frame_lst[2] No newline at end of file
112 113 control_modules_lst = control_modules_str.split("------\n") No newline at end of file
113 114 No newline at end of file
114 115 return header, control_modules_lst No newline at end of file
115 116 No newline at end of file
116 117 No newline at end of file
117 118 def __sendFile2Modules(self,cmd): No newline at end of file
118 119 No newline at end of file
119 120 #Needed for the loop No newline at end of file
120 121 header, control_modules_lst = self.__All2Blocks(self.rx_buffer) No newline at end of file
121 122 correct = 0 No newline at end of file
122 123 No newline at end of file
123 124 for id in range(1,65): No newline at end of file
124 125 No newline at end of file
125 126 if id not in self.enaModules: No newline at end of file
126 127 continue No newline at end of file
127 128 No newline at end of file
128 129 if self.__ConnectionWithControlModules(header + control_modules_lst[id-1], cmd, id) == "OK": No newline at end of file
129 130 correct = correct + 1 No newline at end of file
130 131 No newline at end of file
131 132 if correct == len(self.enaModules): No newline at end of file
132 133 rpta = "OK" No newline at end of file
133 134 else: No newline at end of file
134 135 rpta = "Failure" No newline at end of file
135 136 No newline at end of file
136 137 return rpta No newline at end of file
137 138 No newline at end of file
138 139 def __changeBeam(self, cmd): No newline at end of file
139 140 No newline at end of file
140 141 correct = 0 No newline at end of file
141 142 # enaModules = self.checkAntenna() No newline at end of file
142 143 # enaModules = [11,12,13,14] No newline at end of file
143 144 No newline at end of file
144 145 for id in range(1,65): No newline at end of file
145 146 if id not in self.enaModules: No newline at end of file
146 147 continue No newline at end of file
147 148 No newline at end of file
148 149 if self.__ConnectionWithControlModules(self.rx_buffer,cmd,id) == "OK": No newline at end of file
149 150 correct = correct + 1 No newline at end of file
150 151 No newline at end of file
151 152 if correct == len(self.enaModules): No newline at end of file
152 153 rpta = "OK" No newline at end of file
153 154 else: No newline at end of file
154 155 rpta = "Failure" No newline at end of file
155 156 No newline at end of file
156 157 return rpta No newline at end of file
157 158 No newline at end of file
158 159 def __getControlModuleStatus(self, cmd): No newline at end of file
159 160 No newline at end of file
160 161 all_blocks = "" No newline at end of file
161 162 # enaModules = self.checkAntenna() No newline at end of file
162 163 # enaModules = [11,12,13,14] No newline at end of file
163 164 No newline at end of file
164 165 for id in range(1,65): No newline at end of file
165 166 if id not in self.enaModules: No newline at end of file
166 167 continue No newline at end of file
167 168 No newline at end of file
168 169 one_block = self.__ConnectionWithControlModules(self.rx_buffer,cmd,id) No newline at end of file
169 170 No newline at end of file
170 171 all_blocks = all_blocks + one_block No newline at end of file
171 172 #Using tx buffer No newline at end of file
172 173 print all_blocks No newline at end of file
173 174 self.tx_buffer = all_blocks No newline at end of file
174 175 No newline at end of file
175 176 def __getConnectionStatus(self, cmd): No newline at end of file
176 177 No newline at end of file
177 178 ena = self.checkAntenna() No newline at end of file
178 179 self.enaModules = ena No newline at end of file
179 180 No newline at end of file
180 181 blockLst = [] No newline at end of file
181 182 No newline at end of file
182 183 for id in range(1,65): No newline at end of file
183 184 if id not in self.enaModules: No newline at end of file
184 185 continue No newline at end of file
185 186 No newline at end of file
186 187 blockStr = self.__ConnectionWithControlModules(self.rx_buffer,cmd,id) No newline at end of file
187 188 blockLst.append(blockStr + ", 192.168.1." + str(id) + "\n") No newline at end of file
188 189 #Using tx buffer No newline at end of file
189 190 self.tx_buffer = "".join(blockLst) No newline at end of file
190 191 print self.tx_buffer No newline at end of file
191 192 No newline at end of file
192 193 return self.tx_buffer No newline at end of file
193 194 No newline at end of file
195 def getConnectionStatus(self, cmd):
No newline at end of file
196
No newline at end of file
197 ena = self.checkAntenna()
No newline at end of file
198 self.enaModules = ena
No newline at end of file
199
No newline at end of file
200 blockLst = []
No newline at end of file
201
No newline at end of file
202 for id in range(1,65):
No newline at end of file
203 if id not in self.enaModules:
No newline at end of file
204 continue
No newline at end of file
205
No newline at end of file
206 blockStr = self.__ConnectionWithControlModules(self.rx_buffer,cmd,id)
No newline at end of file
207 blockLst.append(blockStr + ", 192.168.1." + str(id) + "\n")
No newline at end of file
208 #Using tx buffer
No newline at end of file
209 self.tx_buffer = "".join(blockLst)
No newline at end of file
210 print self.tx_buffer
No newline at end of file
211
No newline at end of file
212 return self.tx_buffer
No newline at end of file
213
No newline at end of file
214 def getControlModuleStatus(self, cmd):
No newline at end of file
215
No newline at end of file
216 all_blocks = ""
No newline at end of file
217 # enaModules = self.checkAntenna()
No newline at end of file
218 # enaModules = [11,12,13,14]
No newline at end of file
219
No newline at end of file
220 for id in range(1,65):
No newline at end of file
221 if id not in self.enaModules:
No newline at end of file
222 continue
No newline at end of file
223
No newline at end of file
224 one_block = self.__ConnectionWithControlModules(self.rx_buffer,cmd,id)
No newline at end of file
225
No newline at end of file
226 all_blocks = all_blocks + one_block
No newline at end of file
227 #Using tx buffer
No newline at end of file
228 print all_blocks
No newline at end of file
229 self.tx_buffer = all_blocks
No newline at end of file
230
No newline at end of file
231 return all_blocks
No newline at end of file
232
No newline at end of file
233 No newline at end of file
194 234 if __name__ == '__main__': No newline at end of file
195 235 No newline at end of file
196 236 absObj = ABSServer() No newline at end of file
197 237 No newline at end of file
198 238 while 1: No newline at end of file
199 239 absObj.waitRequest() No newline at end of file
General Comments 0
You need to be logged in to leave comments. Login now