Esempio n. 1
0
        /// <summary> Called to create a SubmitMultiResp object </summary>
        /// <param name="defaultEncoding"></param>
        /// <param name="buf"></param>
        /// <param name="offset"></param>
        /// <returns> SubmitMultiResp </returns>
        public static SubmitMultiSmResp Create(DataCodings defaultEncoding, SmppBuffer buf, ref int offset)
        {
            SubmitMultiSmResp submitMultiResp = new SubmitMultiSmResp(defaultEncoding);

            try
            {
                int start_offset = offset;

                buf.ExtractHeader(submitMultiResp, ref offset);

                if (submitMultiResp.Length > Header.HEADER_LENGTH)
                {
                    submitMultiResp.MessageId = buf.ExtractCString(ref offset);
                    submitMultiResp.UnsuccessDestinationAddresses = buf.ExtractUnsuccessDestinationAddresses(ref offset);

                    while (offset - start_offset < submitMultiResp.Length)
                    {
                        submitMultiResp.Optional.Add(buf.ExtractTLV(ref offset));
                    }
                }
            }

            catch
            {
                submitMultiResp = null;
            }

            return(submitMultiResp);
        }
Esempio n. 2
0
        /// <summary> Called to create a SubmitMultiResp object </summary>
        /// <param name="defaultEncoding"></param>
        /// <param name="buf"></param>
        /// <param name="offset"></param>
        /// <returns> SubmitMultiResp </returns>
        public static SubmitMultiSmResp Create(DataCodings defaultEncoding, SmppBuffer buf, ref int offset)
        {
            SubmitMultiSmResp submitMultiResp = new SubmitMultiSmResp(defaultEncoding);

            try
            {
                int start_offset = offset;

                buf.ExtractHeader(submitMultiResp, ref offset);

                if (submitMultiResp.Length > Header.HEADER_LENGTH)
                {
                    submitMultiResp.MessageId = buf.ExtractCString(ref offset);
                    submitMultiResp.UnsuccessDestinationAddresses = buf.ExtractUnsuccessDestinationAddresses(ref offset);

                    while (offset - start_offset < submitMultiResp.Length)
                    {
                        submitMultiResp.Optional.Add(buf.ExtractTLV(ref offset));
                    }
                }
            }

            catch
            {
                submitMultiResp = null;
            }

            return submitMultiResp;
        }
Esempio n. 3
0
        /// <summary> Called to fire the submit multi response pdu event </summary>
        /// <param name="data"></param>
        internal void OnSubmitMultiSmResp(SubmitMultiSmResp data)
        {
            try
            {
                if (SubmitMultiSmRespEvent != null)
                {
                    SubmitMultiSmRespEvent(this, data);
                }
            }

            catch
            {
            }
        }