summaryrefslogtreecommitdiffstats
path: root/For Weekly Test/Old/07-07-2011/gsmcall_.py
blob: 039622c0cac47f67893bbade8ab6ce6c51817ecd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
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/ttyUSB1'
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)