@Override public void onReceiveWithSms(Context context, Sms s, int partNum, int res, int smsID) { this.answerTo = s.getAnswerTo(); s.setDelIntentTrue(partNum); smsHelper.setDelIntentTrue(smsID, partNum); boolean delIntComplete = s.delIntentsComplete(); String smsSendTo; if (s.getTo() != null) { // prefer a name over a number in the to field smsSendTo = s.getTo(); } else { smsSendTo = s.getNumber(); } if (res == Activity.RESULT_OK && delIntComplete) { send(context.getString(R.string.chat_sms_delivered_to, s.getShortendMessage(), smsSendTo)); } else if (s.getResSentIntent() == -1) { if (res == Activity.RESULT_CANCELED) { send( context.getString( R.string.chat_sms_not_delivered_to, s.getShortendMessage(), smsSendTo)); } s.setResSentIntent(res); } if (delIntComplete) { removeSms(smsID); } }
public void parseLine(String line) { String cutLine = line.substring(18); try { if (cutLine.matches("\\d{5}.+")) { if (cutLine.toLowerCase().contains("kb")) { Mms mms = new Mms(getNumber(cutLine)); mmsList.add(mms); System.out.println("Added an mms to " + mms.getNumber()); } else if (cutLine.contains(":")) { Dial dial = getDialInfo(cutLine); dialList.add(dial); System.out.println("Added a call to " + dial.getNumber() + ", time: " + dial.getLength()); } else { Sms sms = new Sms(getNumber(cutLine)); int count = getSmsCount(cutLine); for (int q = 0; q < count; q++) { smsList.add(sms); } System.out.println("Added " + count + " sms to " + sms.getNumber()); } } else { if (cutLine.toLowerCase().contains("kb")) { int kBytes = getKBytes(cutLine); Transfer transfer = new Transfer(kBytes); transferList.add(transfer); System.out.println("Added transfer of " + kBytes + " kilobytes"); } else { throw new IncorrectEntryException(); } } } catch (IncorrectEntryException e) { e.printStackTrace(); } }