summaryrefslogtreecommitdiffstats
path: root/Code
diff options
context:
space:
mode:
authorTriatmoko2011-11-14 16:19:19 +0100
committerTriatmoko2011-11-14 16:19:19 +0100
commitadd562ebfba6fdb3fbe13ee3c604ce375ba50d82 (patch)
tree86d5e99bd2a7ac886c9266c24558694c0c40f2e5 /Code
parentdelete un-used file in website folder. This file should not be there. (diff)
downloadgsm-selftest-add562ebfba6fdb3fbe13ee3c604ce375ba50d82.tar.gz
gsm-selftest-add562ebfba6fdb3fbe13ee3c604ce375ba50d82.tar.xz
gsm-selftest-add562ebfba6fdb3fbe13ee3c604ce375ba50d82.zip
add comment
Diffstat (limited to 'Code')
-rwxr-xr-xCode/Server-Code/ControllerClass.py43
1 files changed, 36 insertions, 7 deletions
diff --git a/Code/Server-Code/ControllerClass.py b/Code/Server-Code/ControllerClass.py
index a028dd9..4f4cef5 100755
--- a/Code/Server-Code/ControllerClass.py
+++ b/Code/Server-Code/ControllerClass.py
@@ -36,29 +36,34 @@ class controller:
if self.callFrom =="GSMRZ3" or self.callFrom =="GSMRZ2": # wait until ssh connection establish
if self.continues == 1:
+ #putting 6 seconds sleep to prevent unsuccess login using SSH since we have problem with duration time loging into beagle board
sleep(6)
self.callerGreeting()
else:
self.connected = 'NOT OK'
else:
+ #waiting 2 seconds if doesnt use ssh connection until handler ready
sleep(2)
self.callerGreeting()
if self.connected == 'OK':
self.caller.sendData('CALLER|'+self.destNo)
- callerHandler = self.caller.receiveData(25)
+ callerHandler = self.caller.receiveData(25)
+ #waiting ready message from caller
if callerHandler == "CALLER READY":
logger.logEvent('Caller handler : Ready')
self.initReceiver()
if self.dest =="GSMRZ3" or self.dest =="GSMRZ2": # wait until ssh connection establish
if self.continues == 1:
+ #putting 6 seconds sleep to prevent unsuccess login using SSH since we have problem with duration time loging into beagle board
sleep(6)
self.receiverGreeting()
else:
self.connected = 'NOT OK'
- else:
+ else:
+ #waiting 2 seconds if doesnt use ssh connection until handler ready
sleep(2)
self.receiverGreeting()
@@ -66,12 +71,14 @@ class controller:
self.receiver.sendData('RECEIVER')
destHandler = self.receiver.receiveData(25)
-
+ #waiting ready message from destination
+
if destHandler == 'RECEIVER READY':
logger.logEvent('Receiver handler : Ready')
self.startCall()
self.waitingFeedback()
+ #Device destination having error after handler ready to receive call.
elif destHandler == 'DEVICE NOT READY':
self.testResult == 802
logger.logEvent('802 General Device Error: Destination device no respond timeout')
@@ -81,6 +88,7 @@ class controller:
logger.logEvent('604 General Handler Error: Destination handler no respond timeout')
self.initTerminate()
+ #can connect to handler but device destination not ready to do the test.
elif self.connected == 'DEVICE NOT READY':
self.testResult = 802
logger.logEvent('802 General Device Error: Destination device no respond timeout')
@@ -99,6 +107,7 @@ class controller:
self.caller.closeConnection()
self.initCancelTest()
+ #can connect to handler but device caller not ready to do the test.
elif self.connected == 'DEVICE NOT READY':
self.testResult = 801
self.caller.sendData('TERMINATE CONNECTION')
@@ -139,6 +148,7 @@ class controller:
self.testResult = 200
self.initTerminate()
else:
+ #build specially only for Eplus card. since they use prepaid card.
if self.dest == 'GSMExt.Eplus':
if self.resultCaller == 'CALL OK' and self.resultDest <> 'TIME OUT':
logger.logEvent('Test Failed - Eplus No credit on Eplus')
@@ -150,6 +160,7 @@ class controller:
self.initTerminate()
else:
+ #one or both of the handler send un success test. assign failed to this test
if self.resultCaller <> 'CALL OK' or self.resultDest <> 'CALL OK':
logger.logEvent('Test Failed')
self.testResult = 486
@@ -187,6 +198,7 @@ class controller:
self.boxCaller = SSHTunnelBoxClass.SSHTunneling(self.portCaller, 50008, self.server, self.username, self.password)
status = self.boxCaller.startTunneling()
+ #check whether the SSH tunneling succes or not, 0 is failed!
if status!= 0:
self.continues = 1
else:
@@ -195,6 +207,7 @@ class controller:
self.initGSM(self.portCaller, self.callPortName, self.callFrom)
else:
+ #open the SIP handler
subprocess.Popen(args=["gnome-terminal", '--command=python SIPHandler.py '+self.accCaller+ ' ' +str(self.portCaller)])
# define the destination configuration such as port name and port caller.
@@ -211,7 +224,8 @@ class controller:
#open SSH tunneling
self.boxDest = SSHTunnelBoxClass.SSHTunneling(self.portDest, 50008, self.server, self.username, self.password)
status = self.boxDest.startTunneling()
- #print self.boxCaller.__tunnelStarted
+
+ #check whether the SSH tunneling succes or not, 0 is failed!
if status!= 0:
self.continues = 1
else:
@@ -229,6 +243,7 @@ class controller:
logger.logEvent('TERMINATE CONNECTION')
self.caller.sendData('TERMINATE CONNECTION')
self.receiver.sendData('TERMINATE CONNECTION')
+
if self.callFrom[0:5] == 'GSMRZ':
if self.callFrom != 'GSMRZ1':
# close SSH tunneling
@@ -237,6 +252,8 @@ class controller:
if self.dest != 'GSMRZ1':
# close SSH tunneling
self.boxDest.killTunneling()
+
+ #close port communication
self.receiver.closeConnection()
self.caller.closeConnection()
@@ -246,21 +263,27 @@ class controller:
#open connection to the Handler
self.caller = ClientClass.Connection('localhost',self.portCaller)
self.caller.connect()
+
if self.caller.connected == 1:
-
+ #connection establish and send hallo message to handler
logger.logEvent('Connected to Caller Handler')
self.caller.sendData('HELLO HANDLER')
+ #waiting handler respond
message = self.caller.receiveData(20)
+
if message == 'HELLO CONTROLLER':
+ # caller handler send hello message
logger.logEvent('Caller Handler respond')
self.connected = 'OK'
elif message == 'DEVICE NOT READY':
+ # the handler found the device not ready to making test.
logger.logEvent('Connect to Caller but device doesnt work')
self.connected = 'DEVICE NOT READY'
else:
logger.logEvent('Cannt connect to Caller')
self.connected = 'NOT OK'
else:
+ #can't connect to caller handler
logger.logEvent('Cannt connect to Caller')
self.connected = 'NOT OK'
@@ -272,20 +295,26 @@ class controller:
self.receiver.connect()
if self.receiver.connected == 1:
+ #connection establish and send hallo message to handler
logger.logEvent('Connected to Receiver Handler')
self.receiver.sendData('HELLO HANDLER')
+ #waiting handler respond
message = self.receiver.receiveData(20)
+
+ # destination handler send hello message
if message == 'HELLO CONTROLLER':
logger.logEvent('Receiver Handler respond')
self.connected = 'OK'
-
+
+ # the handler found the device not ready to making test.
elif message == 'DEVICE NOT READY':
logger.logEvent('Connect to Caller but device doesnt work')
self.connected = 'DEVICE NOT READY'
else:
- logger.logEvent('Cannt connect to Caller')
+ logger.logEvent('receiver handler not respond')
self.connected = 'NOT OK'
else:
+ #can't connect to destintaion handler
logger.logEvent('Cannt connect to Receiver')
self.connected = 'NOT OK'