public ByteBuffer getBody() { ByteBuffer buffer = new ByteBuffer(); buffer.appendCString(getServiceType()); buffer.appendBuffer(getSourceAddr().getData()); buffer.appendBuffer(getDestAddr().getData()); buffer.appendByte(getEsmClass()); buffer.appendByte(getProtocolId()); buffer.appendByte(getPriorityFlag()); buffer.appendCString(getScheduleDeliveryTime()); buffer.appendCString(getValidityPeriod()); buffer.appendByte(getRegisteredDelivery()); buffer.appendByte(getReplaceIfPresentFlag()); buffer.appendByte(getDataCoding()); buffer.appendByte(getSmDefaultMsgId()); buffer.appendByte(encodeUnsigned(getSmLength())); buffer.appendBuffer(shortMessage.getData()); return buffer; }
SubmitSM request = new SubmitSM(); SubmitSMResp response; request.setServiceType(serviceType); request.setSourceAddr(new Address(senderTon, senderNpi, sender, 11)); } else { request.setSourceAddr(new Address(senderTon, senderNpi, sender)); request.setSourceAddr(sourceAddress); request.setDestAddr(new Address((byte)1, (byte)1, destAddress)); request.setReplaceIfPresentFlag(replaceIfPresentFlag); request.setShortMessage(shortMessage, encoding); request.setScheduleDeliveryTime(scheduleDeliveryTime); request.setValidityPeriod(validityPeriod); request.setEsmClass(esmClass); request.setProtocolId(protocolId); request.setPriorityFlag(priorityFlag); request.setRegisteredDelivery(registeredDelivery); request.setDataCoding(dataCoding); request.setSmDefaultMsgId(smDefaultMsgId); request.assignSequenceNumber(true); System.out.println("Submit request " + request.debugString()); response = session.submit(request); System.out.println("Submit response " + response.debugString());
/** * Constructor for building the object from <code>SubmitSM</code> * PDU. * * @param systemId system id of the client * @param submit the PDU send from the client */ ShortMessageValue(String systemId, SubmitSM submit) throws UnsupportedEncodingException { this.systemId = systemId; serviceType = submit.getServiceType(); sourceAddr = submit.getSourceAddr().getAddress(); destinationAddr = submit.getDestAddr().getAddress(); String encoding = DataCodingCharsetHandler.getCharsetName(submit.getDataCoding()); shortMessage = submit.getShortMessage(encoding); } }
public void setBody(ByteBuffer buffer) throws NotEnoughDataInByteBufferException, TerminatingZeroNotFoundException, PDUException { setServiceType(buffer.removeCString()); sourceAddr.setData(buffer); // ? destAddr.setData(buffer); // ? setEsmClass(buffer.removeByte()); setProtocolId(buffer.removeByte()); setPriorityFlag(buffer.removeByte()); setScheduleDeliveryTime(buffer.removeCString()); setValidityPeriod(buffer.removeCString()); setRegisteredDelivery(buffer.removeByte()); setReplaceIfPresentFlag(buffer.removeByte()); setDataCoding(buffer.removeByte()); setSmDefaultMsgId(buffer.removeByte()); setSmLength(decodeUnsigned(buffer.removeByte())); shortMessage.setData(buffer.removeBuffer(getSmLength())); }
public String debugString() { String dbgs = "(submit: "; dbgs += super.debugString(); dbgs += getSourceAddr().debugString(); dbgs += " "; dbgs += getDestAddr().debugString(); dbgs += " "; dbgs += shortMessage.debugString(); dbgs += " "; dbgs += debugStringOptional(); dbgs += ") "; return dbgs; } }
deliver.setEsmClass((byte)Data.SM_SMSC_DLV_RCPT_TYPE); deliver.setSourceAddr(submit.getDestAddr()); deliver.setDestAddr(submit.getDestAddr()); msg += "stat:" + states[entry.stat] + " "; msg += "err:" + entry.err + " "; String shortMessage = submit.getShortMessage(); if (shortMessage == null) { msg += "text:"; deliver.setServiceType(submit.getServiceType()); } catch (WrongLengthOfStringException e) {
public void setDestAddr(String address) throws WrongLengthOfStringException { setDestAddr(new Address(address)); } public void setDestAddr(byte ton, byte npi, String address) throws WrongLengthOfStringException {
messageStore.submit((SubmitSM) request, submitResponse.getMessageId(), systemId); byte registeredDelivery = (byte) (((SubmitSM) request).getRegisteredDelivery() & Data.SM_SMSC_RECEIPT_MASK); if (registeredDelivery == Data.SM_SMSC_RECEIPT_REQUESTED) { deliveryInfoSender.submit(this, (SubmitSM) request, submitResponse.getMessageId());
public void setDestAddr(byte ton, byte npi, String address) throws WrongLengthOfStringException { setDestAddr(new Address(ton, npi, address)); }
SubmitSM request = new SubmitSM(); SubmitSMResp response; request.setServiceType(serviceType); request.setSourceAddr(sourceAddress); request.setDestAddr(destAddress); request.setReplaceIfPresentFlag(replaceIfPresentFlag); request.setShortMessage(shortMessage,Data.ENC_GSM7BIT); request.setScheduleDeliveryTime(scheduleDeliveryTime); request.setValidityPeriod(validityPeriod); request.setEsmClass(esmClass); request.setProtocolId(protocolId); request.setPriorityFlag(priorityFlag); request.setRegisteredDelivery(registeredDelivery); request.setDataCoding(dataCoding); request.setSmDefaultMsgId(smDefaultMsgId); count = getParam("How many times to submit this message (load test)", count); for (int i = 0; i < count; i++) { request.assignSequenceNumber(true); System.out.print("#" + i + " "); System.out.println("Submit request " + request.debugString()); if (asynchronous) { session.submit(request);