summaryrefslogtreecommitdiffstats
path: root/For Weekly Test/Old/30-07-2011/Controller.py
blob: e4a4566778876c256ddf0ba57e18e3246cabec2f (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
import sys
import ClientClass
import DbClass
import ControllerClass
import PingClass
from time import sleep


def ping(handler):
	
	global serverStatus
	
	if handler == 'landline':
		server = PingClass.Ping('sipgate.de')
		serverStatus = server.ping(3)

	elif handler == 'sip':
		server = PingClass.Ping('132.230.4.8')
		serverStatus = server.ping(3)

	elif handler == 'unisip':
		server = PingClass.Ping('132.230.252.228')
		serverStatus = server.ping(3)

	elif handler == 'gsmr1':
		server = PingClass.Ping('localhost')
		serverStatus = server.ping(3)

	elif handler == 'gsmr2':
		server = PingClass.Ping('132.230.4.64')
		serverStatus = server.ping(3)


db = DbClass.DBMySQLConnection('root', 'randompasswordSQL', 'localhost', 'gsmselftesting')
db.connectDB()
dbStatus = db.connectDB()

if dbStatus == 1:
	
	if db.anyTasksToDo() == 1:
		i=0
		for item in db.tasksList:
			taskID = item[0]
			taskNo = item[1]
			callFrom = item[2]
			callTo = item[3]

        		destination = db.deviceAddress(str(callTo))

			caller = db.deviceAddress(str(callFrom))

			callAdd = caller[0]
			recAdd = destination[0]
			destNo = destination[1]
			
			if callFrom == 'unisip':
				destNo = destNo[7:]

			
			print '\n'
			print "Task ID:	", taskID
			print "Calling From:	", callFrom
			print "To:		", callTo
			print "number:		", destNo
			
			ping(callFrom)

			if serverStatus <> 0:

				ping(callTo)
				if serverStatus <> 0:

					makeTest = ControllerClass.test(callFrom, callAdd, callTo, recAdd, destNo)	
					makeTest.FuncTest()
				
					db.addResult(taskID, makeTest.testResult)

					if makeTest.repeatTest == True:
						db.insertTaskIn2(callTo,callFrom,taskNo)

					print "Result :", makeTest.testResult

					db.deleteTempTask(taskID)
					db.tasksList.remove(item)
					db.tasksList.insert(i,'')
					i = i+1

					sleep(3)
				else:
					print "[failed] 500 "+callTo+ " Server Internal Error"
			else:
				print "[failed] 500 "+callFrom+ " Server Internal Error"
		db.cleanTasksList()
	else:
		print "No job at all"
else:
	sys.exit(5)