Example #1
0
        private static void SendMessage(string command)
        {
            string[] parts       = command.Split(' ');
            string   phoneNumber = parts[1];
            string   message     = string.Join(" ", parts, 2, parts.Length - 2);

            // This is set in the Submit PDU to the SMSC
            // If you are responding to a received message, make this the same as the received message
            DataCodings submitDataCoding = DataCodings.Default;

            // Use this to encode the message
            // We need to know the actual encoding.
            DataCodings encodeDataCoding = DataCodings.ASCII;

            // There is a default encoding set for each connection. This is used if the encodeDataCoding is Default

            SubmitSm     submitSm     = null;
            SubmitSmResp submitSmResp = null;

            connectionManager.SendMessage(phoneNumber, null, Ton.National, Npi.ISDN, submitDataCoding, encodeDataCoding, message, out submitSm, out submitSmResp);
        }
Example #2
0
        private void Bw_DoWork(object sender, DoWorkEventArgs e)
        {
            SubmitSm            submitSm         = null;
            SubmitSmResp        submitSmResp     = null;
            List <SubmitSm>     submitSmList     = null;
            List <SubmitSmResp> submitSmRespList = null;
            var QMessages = new OutSMSRepo(db).GetPendingSMSQueue();

            //AddLog("dd", "worker work", "OUT", "4003", Color.Black);
            if (!object.ReferenceEquals(QMessages, null) && (QMessages.Count > 0))
            {
                while (QMessages.Count > 0)
                {
                    if (ContinueSending)
                    {
                        var OutMsg   = QMessages.Dequeue();
                        int retvalue = -1;
                        if (!string.IsNullOrEmpty(OutMsg.Receiver) && !string.IsNullOrEmpty(OutMsg.Message))
                        {
                            if (OutMsg.Message.Length <= 70)
                            {
                                retvalue = connectionManager.SendMessage(OutMsg.Receiver, null, Ton.Unknown, Npi.Unknown, DataCodings.UCS2
                                                                         , DataCodings.UCS2, OutMsg.Message, out submitSm, out submitSmResp);
                            }
                            else
                            {
                                retvalue = connectionManager.SendMessageLarge(OutMsg.Receiver, null, Ton.Unknown, Npi.Unknown, DataCodings.UCS2
                                                                              , DataCodings.UCS2, OutMsg.Message, out submitSmList, out submitSmRespList);
                            }
                            AddLog(OutMsg.Receiver, OutMsg.Message, "OUT", OutMsg.Sender, "Bw_DoWork", Color.Black);
                            new OutSMSRepo(db).RemoveMessage(OutMsg.Id);
                            //Thread.Sleep(100);
                        }
                    }
                }
            }
        }