summaryrefslogtreecommitdiffstats
path: root/For Weekly Test/15-07-2011/gsmcall_.py
diff options
context:
space:
mode:
Diffstat (limited to 'For Weekly Test/15-07-2011/gsmcall_.py')
-rw-r--r--For Weekly Test/15-07-2011/gsmcall_.py105
1 files changed, 105 insertions, 0 deletions
diff --git a/For Weekly Test/15-07-2011/gsmcall_.py b/For Weekly Test/15-07-2011/gsmcall_.py
new file mode 100644
index 0000000..55c599e
--- /dev/null
+++ b/For Weekly Test/15-07-2011/gsmcall_.py
@@ -0,0 +1,105 @@
+import sys
+import socket
+import time
+
+import subprocess
+import os
+from serial import *
+
+import classServer
+
+from time import sleep
+import string
+
+
+stop ="false"
+success = "failed"
+
+global server
+
+global ser
+portAddress = '/dev/ttyACM0'
+portName = portAddress[-4:]
+portExist = os.popen('dmesg | grep ' + portName).read()
+
+if portExist == '':
+ print 'The serial port does not exist'
+ sys.exit()
+
+
+
+while stop <> "true":#???
+
+
+ try:
+
+ server = classServer.ServerHandler(50098)
+ tried = server.openSocket()
+
+ if server.error != 'No error':
+ print server.error
+ if server.error == '[Errno 98] Address already in use':
+ print 'one should try to kill the port'
+ print server.killPort()
+ server.closeConection()
+
+
+ server.sendData('ready')#send message to controller
+ print "Controller status: ", server.connected
+
+
+ while stop <> "true":
+ try:
+ data = server.receiveData() # waiting mode, until receiver start message or terminate message
+
+ if data == "start": # if receiver start message, handler start to call destination
+
+ while 1:
+
+ num = server.receiveData()
+
+ #num = "929"
+ if num <> "NO DATA":
+ server.closeConnection()
+
+ ser = Serial(
+ port=portAddress,
+ baudrate=19200,
+ bytesize=EIGHTBITS,
+ parity=PARITY_NONE,
+ stopbits=STOPBITS_ONE)
+
+ ser.close()
+ ser.open()
+
+ ser.write('ATD4661' + num + ';\r')
+ sleep(3)
+ ser.write('AT+CHUP\r')
+
+ ser.close()
+ tried = server.openSocket()
+ sleep(2)
+ success = "success"
+ server.sendData(success)
+
+ if data == "terminated": # will terminate the handler if controller send terminate message
+ stop = "true"
+ break
+
+ except ValueError:
+ print "error when sending message"
+ server.closeConnection()
+ del server
+
+
+ server.closeConnection()
+ del server
+ print "Goodbye"
+ sleep(3)
+ sys.exit(1)
+
+ except ValueError:
+ print "Exception: " + str(e)
+
+print "Goodbye"
+sleep(3)