public void onAcceptDeliverSm(DeliverSm deliverSm, SMPPOutboundServerSession source) throws ProcessRequestException { LOGGER.info("deliver_sm: {} {} => {} {}", deliverSm.getSequenceNumber(), deliverSm.getSourceAddr(), deliverSm.getDestAddress(), new String(deliverSm.getShortMessage())); }
/** * Message Type. */ public void setConversationAbort() { esmClass = composeConversationAbort(esmClass); }
/** * Message Type. */ public void setIntermedietDeliveryNotification() { esmClass = composeIntermedietDeliveryNotification(esmClass); }
if (pduRequest.getCommandId() == SmppConstants.CMD_ID_DELIVER_SM) { DeliverSm mo = (DeliverSm) pduRequest; int length = mo.getShortMessageLength(); Address source_address = mo.getSourceAddress(); Address dest_address = mo.getDestAddress(); byte[] shortMessage = mo.getShortMessage(); String SMS= new String(shortMessage); }
public DeliverSm deliverSm(byte[] b) throws PDUStringException { DeliverSm req = new DeliverSm(); SequentialBytesReader reader = new SequentialBytesReader(b); assignHeader(req, reader); req.setServiceType(reader.readCString()); StringValidator.validateString(req.getServiceType(), StringParameter.SERVICE_TYPE); req.setSourceAddrTon(reader.readByte()); req.setSourceAddrNpi(reader.readByte()); req.setSourceAddr(reader.readCString()); StringValidator.validateString(req.getSourceAddr(), StringParameter.SOURCE_ADDR); req.setDestAddrTon(reader.readByte()); req.setDestAddrNpi(reader.readByte()); req.setDestAddress(reader.readCString()); StringValidator.validateString(req.getDestAddress(), StringParameter.DESTINATION_ADDR); req.setEsmClass(reader.readByte()); req.setProtocolId(reader.readByte()); req.setPriorityFlag(reader.readByte()); req.setScheduleDeliveryTime(reader.readCString()); StringValidator.validateString(req.getScheduleDeliveryTime(), StringParameter.SCHEDULE_DELIVERY_TIME); req.setValidityPeriod(reader.readCString()); StringValidator.validateString(req.getValidityPeriod(),
public void onAcceptDeliverSm(DeliverSm deliverSm) throws ProcessRequestException { if (MessageType.SMSC_DEL_RECEIPT.containedIn(deliverSm.getEsmClass())) { DeliveryReceipt delReceipt = deliverSm.getShortMessageAsDeliveryReceipt(); " ' from " + deliverSm.getSourceAddr() + " to " + deliverSm.getDestAddress() + " : " + delReceipt); } catch (InvalidDeliveryReceiptException e) { TypeOfNumber.valueOf(deliverSm.getSourceAddrTon()).toString()); NumberingPlanIndicator.valueOf(deliverSm.getSourceAddrNpi()).toString()); TypeOfNumber.valueOf(deliverSm.getDestAddrTon()).toString()); properties.put(SMPPImplManager.DESTINATION_ADDRESS_NPI , NumberingPlanIndicator.valueOf(deliverSm.getDestAddrNpi()).toString()); new SMPPDispatcher(smsManeger).dispatch(deliverSm.getSourceAddr() ,deliverSm.getDestAddress() , new String(deliverSm.getShortMessage()), properties); log.debug("Receiving message : " + new String(deliverSm.getShortMessage()));
public void onAcceptDeliverSm(DeliverSm deliverSm) throws ProcessRequestException { if (MessageType.SMSC_DEL_RECEIPT.containedIn(deliverSm.getEsmClass())) { DeliveryReceipt delReceipt = deliverSm.getShortMessageAsDeliveryReceipt(); messageId, deliverSm.getSourceAddr(), deliverSm.getDestAddress(), delReceipt); } catch (InvalidDeliveryReceiptException e) { LOGGER.error("Failed getting delivery receipt", e); LOGGER.info("Receiving message : {}", new String(deliverSm.getShortMessage()));
public CustomDeliveryReceipt strip(DeliverSm deliverSm) throws InvalidDeliveryReceiptException { if (MessageType.SMSC_DEL_RECEIPT.containedIn(deliverSm.getEsmClass()) || MessageType.SME_DEL_ACK.containedIn(deliverSm.getEsmClass())) { return new CustomDeliveryReceipt(new String(deliverSm.getShortMessage(), Charset.forName("US-ASCII"))); } else { throw new InvalidDeliveryReceiptException( "deliver_sm is not a Delivery Receipt since esm_class value = " + deliverSm.getEsmClass()); } }
public void onAcceptDeliverSm(DeliverSm deliverSm) throws ProcessRequestException { if (MessageType.SMSC_DEL_RECEIPT.containedIn(deliverSm.getEsmClass())) { // delivery receipt try { DeliveryReceipt delReceipt = deliverSm.getShortMessageAsDeliveryReceipt(); long id = Long.parseLong(delReceipt.getId()) & 0xffffffff; String messageId = Long.toString(id, 16).toUpperCase(); LOGGER.info("received '{}' : {}", messageId, delReceipt); } catch (InvalidDeliveryReceiptException e) { LOGGER.error("receive failed, e"); } } else { // regular short message LOGGER.info("Receiving message : {}", new String(deliverSm.getShortMessage())); } }
private void fireAcceptDeliverSm(DeliverSm deliverSm) throws ProcessRequestException { if (messageReceiverListener != null) { messageReceiverListener.onAcceptDeliverSm(deliverSm); } else { logger.warn("Receive deliver_sm but MessageReceiverListener is null. Short message = " + new String(deliverSm.getShortMessage())); } }
/** * Message Type. * @param esmClass * @return */ public static final byte composeSmeManualAcknowledgment(byte esmClass) { return composeMessageType(esmClass, SMPPConstant.ESMCLS_SME_MANUAL_ACK); }
/** * SME originated Acknowledgment. * @param registeredDelivery * @return */ public static final byte composeSmeDeliveryAckRequested(byte registeredDelivery) { return composeSmeAck(registeredDelivery, SMPPConstant.REGDEL_SME_DELIVERY_ACK_REQUESTED); }
/** * SME originated Acknowledgment. */ public void setSmeAckNotRequested() { registeredDelivery = composeSmeAckNotRequested(registeredDelivery); }
public DeliverSm deliverSm(byte[] b) throws PDUStringException { DeliverSm req = new DeliverSm(); SequentialBytesReader reader = new SequentialBytesReader(b); assignHeader(req, reader); req.setServiceType(reader.readCString()); StringValidator.validateString(req.getServiceType(), StringParameter.SERVICE_TYPE); req.setSourceAddrTon(reader.readByte()); req.setSourceAddrNpi(reader.readByte()); req.setSourceAddr(reader.readCString()); StringValidator.validateString(req.getSourceAddr(), StringParameter.SOURCE_ADDR); req.setDestAddrTon(reader.readByte()); req.setDestAddrNpi(reader.readByte()); req.setDestAddress(reader.readCString()); StringValidator.validateString(req.getDestAddress(), StringParameter.DESTINATION_ADDR); req.setEsmClass(reader.readByte()); req.setProtocolId(reader.readByte()); req.setPriorityFlag(reader.readByte()); req.setScheduleDeliveryTime(reader.readCString()); StringValidator.validateString(req.getScheduleDeliveryTime(), StringParameter.SCHEDULE_DELIVERY_TIME); req.setValidityPeriod(reader.readCString()); StringValidator.validateString(req.getValidityPeriod(),
public DeliveryReceipt strip(DeliverSm deliverSm) throws InvalidDeliveryReceiptException { if (MessageType.SMSC_DEL_RECEIPT.containedIn(deliverSm.getEsmClass())) { return DefaultDecomposer.getInstance().deliveryReceipt(deliverSm.getShortMessage()); } else { throw new InvalidDeliveryReceiptException("deliver_sm is not a Delivery Receipt since ems_class value = " + deliverSm.getEsmClass()); } }
public class ClientSmppSessionHandler extends DefaultSmppSessionHandler { private static final Logger logger = LoggerFactory.getLogger(ClientSmppSessionHandler.class); public ClientSmppSessionHandler() { super(logger); } @Override public void firePduRequestExpired(PduRequest pduRequest) { logger.warn("PDU request expired: {}", pduRequest); } @Override public PduResponse firePduRequestReceived(PduRequest pduRequest) { PduResponse response = pduRequest.createResponse(); logger.info("SMS Received: {}", pduRequest); if (pduRequest.getCommandId() == SmppConstants.CMD_ID_DELIVER_SM) { DeliverSm mo = (DeliverSm) pduRequest; int length = mo.getShortMessageLength(); Address source_address = mo.getSourceAddress(); Address dest_address = mo.getDestAddress(); byte[] shortMessage = mo.getShortMessage(); String SMS= new String(shortMessage); logger.info(source_address + ", " + dest_address + ", " + SMS); } return response; }
public void onAcceptDeliverSm(DeliverSm deliverSm) throws ProcessRequestException { if (MessageType.SMSC_DEL_RECEIPT.containedIn(deliverSm.getEsmClass())) { counter.incrementAndGet(); // delivery receipt try { DeliveryReceipt delReceipt = deliverSm.getShortMessageAsDeliveryReceipt(); long id = Long.parseLong(delReceipt.getId()) & 0xffffffff; String messageId = Long.toString(id, 16).toUpperCase(); LOGGER.info("Receiving delivery receipt for message '{}' : {}", messageId, delReceipt); } catch (InvalidDeliveryReceiptException e) { LOGGER.error("Failed getting delivery receipt", e); } } else { // regular short message LOGGER.info("Receiving message : {}", new String(deliverSm.getShortMessage())); } }
private void fireAcceptDeliverSm(DeliverSm deliverSm) throws ProcessRequestException { if (messageReceiverListener != null) { messageReceiverListener.onAcceptDeliverSm(deliverSm); } else { logger.warn("Receive deliver_sm but MessageReceiverListener is null. Short message = " + new String(deliverSm.getShortMessage())); } }
/** * Message Type. * @param esmClass * @return */ public static final byte composeSmeDeliveryAcknowledment(byte esmClass) { return composeMessageType(esmClass, SMPPConstant.ESMCLS_SME_DELIV_ACK); }
/** * SME originated Acknowledgment. * @param registeredDelivery * @return */ public static final byte composeSmeAckNotRequested(byte registeredDelivery) { return composeSmeAck(registeredDelivery, SMPPConstant.REGDEL_SME_ACK_NO); }