From 8a7755d6f96e599fe75ac8e5e1c6994138f4b99e Mon Sep 17 00:00:00 2001 From: gsmselftest Date: Wed, 16 Nov 2011 18:06:02 +0100 Subject: under Testing folder --- Under-Testing/Server-Code-New/usbDetectClass.py | 96 +++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 Under-Testing/Server-Code-New/usbDetectClass.py (limited to 'Under-Testing/Server-Code-New/usbDetectClass.py') diff --git a/Under-Testing/Server-Code-New/usbDetectClass.py b/Under-Testing/Server-Code-New/usbDetectClass.py new file mode 100644 index 0000000..d64e328 --- /dev/null +++ b/Under-Testing/Server-Code-New/usbDetectClass.py @@ -0,0 +1,96 @@ +from serial import * #serial port library +import sys +from time import sleep +import DbClass + + +class serialPort: + + def __init__(self, portAddress): + self.portAddress = portAddress + self.portExist = 0 + self.IMEI = None + self.number = None + #self.updateStatus = None + + def initDB(self): + self.db = DbClass.DBMySQLConnection() + self.db.connectDB() + self.dbStatus = self.db.connectDB() + + def initUpdate(self, deviceName, newPortName, newNumber): + self.initDB() + + if self.dbStatus != 0: + self.db.updateGSMDevice(deviceName, newPortName, newNumber) + else: + print 'No connection to database' + + def portInit(self): + self.portExist = 0 + try: + self.ser = Serial( + port='/dev/'+self.portAddress, + baudrate=19200, + bytesize=EIGHTBITS, + parity=PARITY_NONE, + stopbits=STOPBITS_ONE) + self.ser.open() + self.ser.isOpen() + self.portExist = 1 + + except Exception, e: + return 0 + + def isInteger(self, x): + try: + int(x) + return True + except: + return False + + def findIMEI(self): + self.portInit() + if self.portExist == 1: + self.ser.flushInput() #clean the input buffer for serial port + self.ser.write('AT+GSN\r') + sleep(0.5) + result = self.ser.read(25) + if result != '': + self.IMEI = result[result.find('3'):15+result.find('3')] + else: + self.IMEI = 'IMEI not found' + return self.IMEI + + else: + self.IMEI = 'port not found' + return 0 + + def findNumber(self): + self.portInit() + + if self.portExist == 1: + self.ser.flushInput() #clean the input buffer for serial port + self.ser.write('AT+CNUM\r') + sleep(0.5) + readNum = self.ser.read(35) + self.ser.close() + firstQuote = readNum.find('"') + cutString = readNum [firstQuote:] + secondQuote = cutString.find(',') + number = cutString[1:secondQuote-1] + + if number != '': + if number.find('+') == 0: + number = '0'+number[3:len(number)] + elif int(number[0:1]) == 4: + number = '0'+number[2:len(number)] + self.number = number + else: + self.number = 'number not found' + + return self.number + + else: + self.number = 'port not found' + return 0 -- cgit v1.2.3-55-g7522