NAzT
8/14/2013 - 5:27 PM

sms.py

sms.py

import serial
import re

ser = serial.Serial('/dev/tty.HUAWEIMobile-Modem', 115200, timeout=1)
ser.write('ATZ\r')
ser.write('AT+CMGF=1\r')
ser.write('AT+CMGL="ALL"\r')

line = ser.readline()
regex = "\+CMGL: (\d+),(.+),(.+),(.*),(.*)"

while line:
    sline = line.strip()
    if sline == "OK" or sline == "":
        pass
    else:
        m = re.match(regex, sline);
        if m:
            line = ser.readline().strip()
            print "%-20s FROM %#10s" % (line, m.group(3).split('"')[1])
    line = ser.readline()

ser.close()