Exemple #1
0
        /// <summary> Called to send a query </summary>
        /// <param name="messageId"></param>
        /// <returns> 1 - Successful / 0 - Failed </returns>
        public QuerySm SendQuery(string messageId)
        {
            QuerySm querySm = null;

            try
            {
                // Capture the next transmitter connection
                var smppConnection = NextTransmitterConnection();

                if (smppConnection.Status != ConnectionStatus.Bound)
                {
                    WriteLog("ESMEManager : SendMessage : Warning : Not Connected To The SMPP Server");

                    return(querySm);
                }

                // Send the message
                querySm = smppConnection.SendQuery(messageId);
            }

            catch (Exception exception)
            {
                WriteLog(LogEventNotificationTypes.Email,
                         "ESMEManager : SendMessage : ERROR : {0}",
                         exception.ToString());
            }

            return(querySm);
        }
Exemple #2
0
        /// <summary> Called to create a QuerySm object </summary>
        /// <param name="defaultEncoding"></param>
        /// <param name="buf"></param>
        /// <param name="offset"></param>
        /// <returns> QuerySm </returns>
        public static QuerySm Create(DataCodings defaultEncoding,
                                     SmppBuffer buf,
                                     ref int offset)
        {
            var querySm = new QuerySm(defaultEncoding);

            try
            {
                buf.ExtractHeader(querySm,
                                  ref offset);

                querySm.MessageId  = buf.ExtractCString(ref offset);
                querySm.SourceTon  = buf.ExtractByte(ref offset);
                querySm.SourceNpi  = buf.ExtractByte(ref offset);
                querySm.SourceAddr = buf.ExtractCString(ref offset);
            }

            catch { querySm = null; }

            return(querySm);
        }