def xlBalance(ttyUsbx): try: p = "/dev/" + ttyUsbx num = "*123#" enc = gsmpdu.encode(num) cmd = 'AT+CUSD=1,"' + enc + '",15\r' modem = serial.Serial(port=p, baudrate=115200, timeout=5, rtscts=0, xonxoff=0) modem.write("AT+CUSD=2\r") modem.write(cmd) rspn = modem.read(1024) pattern = r'"([A-Za-z0-9_]*)"' texts = re.findall(pattern, rspn) dec = gsmpdu.decode(texts[1]) print "dec" print dec balMatcher = re.compile("Pulsa (\d+)") balance = balMatcher.findall(dec) return balance[0] modem.close() except: #print "!!! XL Balance error !!!" modem.close() return "None"
def indosatBalance(ttyUsbx): try: p = "/dev/" + ttyUsbx num = "*555#" enc = gsmpdu.encode(num) cmd = 'AT+CUSD=1,"' + enc + '",15\r' modem = serial.Serial(port=p, baudrate=115200, timeout=5, rtscts=0, xonxoff=0) modem.write("AT+CUSD=2\r") modem.write(cmd) rspn = modem.read(1024) pattern = r'"([A-Za-z0-9_]*)"' texts = re.findall(pattern, rspn) dec = gsmpdu.decode(texts[1]) balPattern = r'Rp.([0-9_]*).' balance = re.findall(balPattern, dec) return balance[0] modem.close() except: #print "!!! INDOSAT Balance error !!!" modem.close() return "None"
def _ussd_response(self, port, response): m = patterns.USSD_RESPONSE.search(response) if m: code, response, dcs = m.groups() self._incoming.put( ('ussd_response', (self.id, gsmpdu.decode(response[2:-1]), code, dcs[1:])))
def _ussd_response(self, port, response): m = patterns.USSD_RESPONSE.search(response) if m: code, response, dcs = m.groups() self._incoming.put(('ussd_response', (self.id, gsmpdu.decode(response[2:-1]), code, dcs[1:])))
def indosatBalance(ttyUsbx): try: p = "/dev/"+ttyUsbx num = "*555#" enc = gsmpdu.encode(num) cmd = 'AT+CUSD=1,"' + enc + '",15\r' modem = serial.Serial(port=p,baudrate=115200,timeout=5,rtscts=0,xonxoff=0) modem.write("AT+CUSD=2\r") modem.write(cmd) rspn = modem.read(1024) pattern = r'"([A-Za-z0-9_]*)"' texts = re.findall(pattern,rspn) dec = gsmpdu.decode(texts[1]) balPattern = r'Rp.([0-9_]*).' balance = re.findall(balPattern,dec) return balance[0] modem.close() except: #print "!!! INDOSAT Balance error !!!" modem.close() return "None"
def xlBalance(ttyUsbx): try: p = "/dev/"+ttyUsbx num = "*123#" enc = gsmpdu.encode(num) cmd = 'AT+CUSD=1,"' + enc + '",15\r' modem = serial.Serial(port=p,baudrate=115200,timeout=5,rtscts=0,xonxoff=0) modem.write("AT+CUSD=2\r") modem.write(cmd) rspn = modem.read(1024) pattern = r'"([A-Za-z0-9_]*)"' texts = re.findall(pattern,rspn) dec = gsmpdu.decode(texts[1]) print "dec" print dec balMatcher = re.compile("Pulsa (\d+)") balance = balMatcher.findall(dec) return balance[0] modem.close() except: #print "!!! XL Balance error !!!" modem.close() return "None"