public String getMessageIdText() { return MessageUtil.createMessageIdString(messageId); // return String.format("%010d", messageId); // return String.format("%d", messageId); }
/** * Creating a String representation of Relative Time Format * * @param years * @param months * @param days * @param hours * @param minutes * @param seconds * @return */ public static String printSmppRelativeDate(int years, int months, int days, int hours, int minutes, int seconds) { StringBuilder sb = new StringBuilder(); addDateToStringBuilder(sb, years, months, days, hours, minutes, seconds); sb.append("000R"); return sb.toString(); }
public static void applyValidityPeriod(Sms sms, Date validityPeriod, boolean fromEsme, int maxValidityPeriodHours, int defaultValidityPeriodHours) throws SmscProcessingException { Date now = new Date(); if (validityPeriod == null) { validityPeriod = addHours(now, defaultValidityPeriodHours); } Date maxValidityPeriod = addHours(now, maxValidityPeriodHours); if (validityPeriod.after(maxValidityPeriod)) { validityPeriod = maxValidityPeriod; } if (validityPeriod.before(now)) { validityPeriod = maxValidityPeriod; } sms.setValidityPeriod(validityPeriod); }
public static int calculateMsgParts(String msg, DataCodingScheme dataCodingScheme, int nationalLanguageLockingShift, int nationalLanguageSingleShift) { int lenSolid = MessageUtil.getMaxSolidMessageCharsLength(dataCodingScheme); int lenSegmented = MessageUtil.getMaxSegmentedMessageCharsLength(dataCodingScheme); udh = MessageUtil.getNationalLanguageIdentifierUdh(nationalLanguageLockingShift, nationalLanguageSingleShift); if (nationalLanguageLockingShift > 0) { lenSolid -= 3;
int maxLen = MessageUtil.getMaxSolidMessageCharsLength(dataCodingScheme); int maxSplLen = MessageUtil.getMaxSegmentedMessageCharsLength(dataCodingScheme); if (splittingType == SplittingType.SplitWithParameters_SpecifiedSegmentLength || splittingType == SplittingType.SplitWithUdh_SpecifiedSegmentLength) {
public static Sms createReceiptSms(Sms sms, boolean delivered, String extraString, boolean tempFailure) { Sms receipt = new Sms(); receipt.setDbId(UUID.randomUUID()); receipt.setSourceAddr(sms.getSmsSet().getDestAddr()); receipt.setSourceAddrNpi(sms.getSmsSet().getDestAddrNpi()); receipt.setSourceAddrTon(sms.getSmsSet().getDestAddrTon()); receipt.setSubmitDate(sms.getSubmitDate()); receipt.setMessageId(sms.getMessageId()); Date validityPeriod = MessageUtil.addHours(new Date(), 24); receipt.setValidityPeriod(validityPeriod); String rcpt = createDeliveryReceiptMessage(sms.getMessageIdText(), sms.getSubmitDate(), new Timestamp(System.currentTimeMillis()), sms.getSmsSet().getStatus().getCode(), sms.getShortMessageText(), delivered, extraString, tempFailure); // TODO: now we are sending all in GSM7 encoding receipt.setDataCoding(0); receipt.setShortMessageText(rcpt); receipt.setReceiptLocalMessageId(sms.getMessageId()); receipt.setOriginationType(OriginationType.LOCAL_ORIG); receipt.setEsmClass(ESME_DELIVERY_ACK | (sms.getEsmClass() & 0x03)); return receipt; }
public static Sms createReceiptSms(Sms sms, boolean delivered, TargetAddress ta, boolean origNetworkIdForReceipts, String extraString) { return createReceiptSms(sms, delivered, ta, origNetworkIdForReceipts, extraString, false); }
} else { DataCodingScheme dataCodingScheme = new DataCodingSchemeImpl(smsEvent.getDataCoding()); msgParts = MessageUtil.calculateMsgParts(smsEvent.getShortMessageText(), dataCodingScheme, smsEvent.getNationalLanguageLockingShift(), smsEvent.getNationalLanguageSingleShift()); DeliveryReceiptData deliveryReceiptData = MessageUtil.parseDeliveryReceipt(smsEvent.getShortMessageText(), smsEvent.getTlvSet()); String st = null;
String rcpt = MessageUtil.createDeliveryReceiptMessage(messageId, submitDate, new Date(), errorCode.getCode(), "origMsgText", delivered, null, tempFailure); byte[] buf = rcpt.getBytes(utf8Charset);
sb.append(getFirst20CharOfSMS(origMsgText)); if (extraString != null) { sb.append(extraString);
public static String[] sliceMessage(String msg, DataCodingScheme dataCodingScheme, int nationalLanguageLockingShift, int nationalLanguageSingleShift) { int lenSolid = MessageUtil.getMaxSolidMessageCharsLength(dataCodingScheme); int lenSegmented = MessageUtil.getMaxSegmentedMessageCharsLength(dataCodingScheme); udh = MessageUtil.getNationalLanguageIdentifierUdh(nationalLanguageLockingShift, nationalLanguageSingleShift); if (nationalLanguageLockingShift > 0) { lenSolid -= 3;
public static Sms createReceiptSms(Sms sms, boolean delivered, String extraString) { return createReceiptSms(sms, delivered, extraString, false); }
if (this.testingForm.getSmppSimulatorParameters().isIdResponseTlv()) { msgId = String.format("%08X", mId); msgId2 = MessageUtil.createMessageIdString(mId); msgId3 = msgId; if (this.testingForm.getSmppSimulatorParameters().isWrongMessageIdInDlr()) msgId3 = msgId3 + "XYZ"; } else { msgId = MessageUtil.createMessageIdString(mId); msgId2 = MessageUtil.createMessageIdString(mId); if (this.testingForm.getSmppSimulatorParameters().isWrongMessageIdInDlr()) msgId2 = msgId2 + "XYZ";
public static Sms createReceiptSms(Sms sms, boolean delivered) { return createReceiptSms(sms, delivered, null); }
public static void applyScheduleDeliveryTime(Sms sms, Date scheduleDeliveryTime) throws SmscProcessingException { if (scheduleDeliveryTime == null) return; Date maxSchDelTime = addHours(sms.getValidityPeriod(), -3); if (scheduleDeliveryTime.after(maxSchDelTime)) { throw new SmscProcessingException("Schedule delivery time is before 3 hours before than validity period expiration", SmppConstants.STATUS_INVSCHED, MAPErrorCode.systemFailure, SmscProcessingException.HTTP_ERROR_CODE_NOT_SET, null, SmscProcessingException.INTERNAL_ERROR_MISC_VALIDITY_PERIOD_INVALID); } sms.setScheduleDeliveryTime(scheduleDeliveryTime); }
int tSec = (int) (date.getTime() - d1.getTime()) / 100; addDateToStringBuilder(sb, year, month, day, hour, min, sec);
public static Sms createReceiptSms(Sms sms, boolean delivered, TargetAddress ta, boolean origNetworkIdForReceipts) { return createReceiptSms(sms, delivered, ta, origNetworkIdForReceipts, null, false); }
Date validityPeriod = MessageUtil.addHours(new Date(), 24); smsStatusReport.setValidityPeriod(validityPeriod);
public static Sms createReceiptSms(Sms sms, boolean delivered, TargetAddress ta, boolean origNetworkIdForReceipts, String extraString, boolean tempFailure) { Sms receipt = createReceiptSms(sms, delivered, extraString, tempFailure); SmsSet backSmsSet = new SmsSet(); backSmsSet.setDestAddr(ta.getAddr()); backSmsSet.setDestAddrNpi(ta.getAddrNpi()); backSmsSet.setDestAddrTon(ta.getAddrTon()); if (origNetworkIdForReceipts) backSmsSet.setNetworkId(sms.getOrigNetworkId()); else backSmsSet.setNetworkId(sms.getSmsSet().getNetworkId()); backSmsSet.addSms(receipt); // receipt.setStored(true); return receipt; }