//public void OnDataSent(string data) //{ //} public void OnDataReceived(string data) { List <BaseResult <SMSReadResult> > list = JsonHelper.JsonDeserialize <List <BaseResult <SMSReadResult> > >(data); if (list.Count > 0) { foreach (BaseResult <SMSReadResult> read in list) { if (read.Response.TypeName.Contains("SMSRead")) { if (keywords.Any()) { foreach (QuizModel keyword in keywords) { Match match = new Regex(@"(.*[a-zA-Z]) (.*[a-zA-Z])").Match(keyword.Keyword); if (match.Success) { if (read.Response.Message.ToLower().Contains(match.Groups[1].Value.ToLower())) { string[] arg = read.Response.Message.ToLower().Split(new string[] { match.Groups[1].Value.ToLower() }, StringSplitOptions.RemoveEmptyEntries); using (IQuery con = new DapperDbContext(DatabaseConst.SMSGateway)) { List <Answer> result = con.Query <Answer>(keyword.Response, new { KeyID = arg[0].Trim() }); if (result.Any()) { smsSender = new GSMClient.Client(ipStr, Convert.ToInt32(portStr)); smsSender.Open(); smsSender.Send(string.Format(GSMClient.Command.CommandCollection.SMSSend, read.Response.From, result.SingleOrDefault().Description)); smsSender.Close(); } } break; } } } } } } } }
//public void OnDataSent(string data) //{ //} public void OnDataReceived(string data) { List<BaseResult<SMSReadResult>> list = JsonHelper.JsonDeserialize<List<BaseResult<SMSReadResult>>>(data); if (list.Count > 0) { foreach (BaseResult<SMSReadResult> read in list) { if (read.Response.TypeName.Contains("SMSRead")) { if (keywords.Any()) { foreach (QuizModel keyword in keywords) { Match match = new Regex(@"(.*[a-zA-Z]) (.*[a-zA-Z])").Match(keyword.Keyword); if (match.Success) { if (read.Response.Message.ToLower().Contains(match.Groups[1].Value.ToLower())) { string[] arg = read.Response.Message.ToLower().Split(new string[] { match.Groups[1].Value.ToLower() }, StringSplitOptions.RemoveEmptyEntries); using (IQuery con = new DapperDbContext(DatabaseConst.SMSGateway)) { List<Answer> result = con.Query<Answer>(keyword.Response, new { KeyID = arg[0].Trim() }); if (result.Any()) { smsSender = new GSMClient.Client(ipStr, Convert.ToInt32(portStr)); smsSender.Open(); smsSender.Send(string.Format(GSMClient.Command.CommandCollection.SMSSend, read.Response.From, result.SingleOrDefault().Description)); smsSender.Close(); } } break; } } } } } } } }
private void FormMain_FormClosing(object sender, FormClosingEventArgs e) { gsmClient.Close(); }