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); }
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); } } } } }