def getUnreadText(key): if key.strip() == '9703BB8D5A': modem = GsmModem('/dev/ttyUSB0', 9600) try: print "Connecting mode" modem.connect() except: return "Error connecting" try: messages = modem.listStoredSms(status=Sms.STATUS_RECEIVED_UNREAD) except Exception as e: return str(e) modem.close() retString = "" print "Got %d messages" % len(messages) for message in messages: retString = retString + "%s : %s" % (message.number, message.text) return retString else: return "Incorrect key"
def getAllText(key): if key.strip() == '9703BB8D5A': modem = GsmModem('/dev/ttyUSB0', 9600) try: print "Connecting modem" modem.connect() except Exception as e: return str(e) try: messages = modem.listStoredSms() except Exception as e: return str(e) modem.close() retString = "" print "Got %d messages" % len(messages) for message in messages: retString = retString + "%s : %s" % (message.number, message.text) + "\n" return retString else: return "Incorrect key"
def list_sms(args): modem = GsmModem(args.port, args.baud, AT_CNMI=args.CNMI) if args.debug: # enable dump on serial port logging.basicConfig(format='%(levelname)s: %(message)s', level=logging.DEBUG) print('Connecting to GSM modem on {0}...'.format(args.port)) try: modem.connect(args.pin, waitingForModemToStartInSeconds=args.wait) except PinRequiredError: sys.stderr.write( 'Error: SIM card PIN required. Please specify a PIN with the -p argument.\n' ) sys.exit(1) except IncorrectPinError: sys.stderr.write('Error: Incorrect SIM card PIN entered.\n') sys.exit(1) #print('Checking for network coverage...') messages = modem.listStoredSms() """ try: modem.waitForNetworkCoverage(5) except TimeoutException: print('Network signal strength is not sufficient, please adjust modem position/antenna and try again.') modem.close() sys.exit(1) else: try: pass #sms = modem.sendSms(args.destination, text, waitForDeliveryReport=args.deliver) except TimeoutException: print('Failed to send message: the send operation timed out') modem.close() sys.exit(1) else: modem.close() """ for x in messages: print(x.text) modem.close()
class Read_SMS(): def __init__(self, PORT='ttyUSB0', SPEED=9600, PIN=None): self.modem = GsmModem(PORT, SPEED) self.modem.smsTextMode = False self.modem.connect(PIN) print('Initializing modem...') def read_sms(self): sms_message_db = SmsMessage() for sms in self.modem.listStoredSms(memory='sm', delete=True): print(sms.number, sms.time, sms.text) sms_message_db.date = datetime.now().date() sms_message_db.time = datetime.now().time() sms_message_db.number = sms.number sms_message_db.text_sms = sms.text sms_message_db.ps = filter_ps(sms.number) sms_message_db.save() #print(sms_message_db.get()) def modem_close(self): self.modem.close() print("модем отключен")