Class SmppUtils


  • public final class SmppUtils
    extends Object
    • Field Detail

      • ISO_GSM_0338

        public static final short[] ISO_GSM_0338
        See http://unicode.org/Public/MAPPINGS/ETSI/GSM0338.TXT
      • ISO_GSM_0338_EXT

        public static final short[][] ISO_GSM_0338_EXT
        See http://unicode.org/Public/MAPPINGS/ETSI/GSM0338.TXT
    • Method Detail

      • formatTime

        public static String formatTime​(Date date)
      • string2Date

        public static Date string2Date​(String date)
        YYMMDDhhmmSS where:
        • YY = last two digits of the year (00-99)
        • MM = month (01-12)
        • DD = day (01-31)
        • hh = hour (00-23)
        • mm = minute (00-59)
        • SS = second (00-59)
        Java format is (yyMMddHHmmSS).
        Parameters:
        date - in String format.
        Returns:
        the date
        Throws:
        NumberFormatException - if there is contains non number on date parameter.
        IndexOutOfBoundsException - if the date length in String format is less than 10.
      • getMessageBody

        public static byte[] getMessageBody​(org.jsmpp.bean.DeliverSm deliverSm)
        Returns the payload of a deliverSm
        Parameters:
        deliverSm -
        Returns:
        the shortMessage, by first looking in the shortMessage field of the deliver_sm and if its null or empty, fallbacks to the optional parameter "MESSAGE_PAYLOAD".
      • is8Bit

        public static boolean is8Bit​(org.jsmpp.bean.Alphabet alphabet)
      • isGsm0338Encodeable

        public static boolean isGsm0338Encodeable​(byte[] aMessage)
        Decides if the characters in the argument are GSM 3.38 encodeable.
        Parameters:
        aMessage - must be a set of characters encoded in ISO-8859-1 or a compatible character set. In particular, UTF-8 encoded text should not be passed to this method.
        Returns:
        true if the characters can be represented in GSM 3.38
      • copySubmitSm

        public static org.jsmpp.bean.SubmitSm copySubmitSm​(org.jsmpp.bean.SubmitSm src)
      • copySubmitMulti

        public static org.jsmpp.bean.SubmitMulti copySubmitMulti​(org.jsmpp.bean.SubmitMulti src)
      • copyDataSm

        public static org.jsmpp.bean.DataSm copyDataSm​(org.jsmpp.bean.DataSm src)
      • isServiceStopping

        public static boolean isServiceStopping​(org.apache.camel.support.service.BaseService service)
      • isSessionClosed

        public static boolean isSessionClosed​(org.jsmpp.session.SMPPSession session)
      • createExecutor

        public static ScheduledExecutorService createExecutor​(org.apache.camel.support.service.BaseService service,
                                                              org.apache.camel.Endpoint endpoint,
                                                              String taskName)
      • newReconnectTask

        public static org.apache.camel.support.task.BlockingTask newReconnectTask​(ScheduledExecutorService service,
                                                                                  String taskName,
                                                                                  long initialReconnectDelay,
                                                                                  long reconnectDelay,
                                                                                  int maxReconnect)
      • decodeBody

        public static String decodeBody​(byte[] body,
                                        byte dataCoding,
                                        String defaultEncoding)
                                 throws UnsupportedEncodingException
        This method would try to decode the bytes provided a dataCoding. Supports: US_ASCII, ISO_8859_1, UTF_16_BE alphabet values
        Parameters:
        body - Body of the message in bytes
        dataCoding - The data coding value
        defaultEncoding - The default encoding
        Returns:
        null if body is null or 8bit encoded, or the decoded body on success
        Throws:
        UnsupportedEncodingException - when the default encoding is unsupported