public string SetNewNumber(string NameAndNumber, string PhoneNumber) { using (DB_A4A060_csEntities db = new DB_A4A060_csEntities()) { var username = NameAndNumber.Split(' ')[0]; var user = db.AspNetUsers.SingleOrDefault(u => u.UserName == username); user.PhoneNumber = PhoneNumber; db.SaveChanges(); string response = user.UserName + " (" + user.PhoneNumber + ")"; Context.Response.Output.WriteLine(response); } Context.Response.End(); return(string.Empty); }
public string EnableDisable() { using (DB_A4A060_csEntities db = new DB_A4A060_csEntities()) { var functionQuery = ""; var note = ""; var sendSMS = Boolean.Parse(ConfigurationManager.AppSettings["sendSMS"]); sendSMS = !sendSMS; ConfigurationManager.AppSettings["sendSMS"] = sendSMS.ToString(); if (sendSMS) { Context.Response.Output.WriteLine("Disable SMS Service"); functionQuery = "Enable"; note = "Service Enabled at " + DateTime.Now.AddHours(3); } else { Context.Response.Output.WriteLine("Enable SMS Service"); functionQuery = "Disable"; note = "Service Disabled at " + DateTime.Now.AddHours(3); } db.Logs.Add(new Log { user_id = "Admin", page = HttpContext.Current.Request.Url.AbsoluteUri, function_query = functionQuery, error = null, note = note, datestamp = DateTime.Now.AddHours(3), recipient = null }); db.SaveChanges(); Context.Response.End(); } return(string.Empty); }
public string SendAlerts() { if (Boolean.Parse(ConfigurationManager.AppSettings["sendSMS"])) { using (DB_A4A060_csEntities db = new DB_A4A060_csEntities()) { db.Logs.Add(new Log { user_id = "Admin", page = HttpContext.Current.Request.Url.AbsoluteUri, function_query = "Start SendAlerts", error = null, note = "Service Started at " + DateTime.Now.AddHours(3), datestamp = DateTime.Now.AddHours(3), recipient = null }); db.SaveChanges(); var rows = db.Z_AlertLogs.Join(db.FarmCows, z_alerts => z_alerts.bolus_id, farm_cows => farm_cows.Bolus_ID, (z_alerts, farm_cows) => new { z_alerts, farm_cows }) .Join(db.AspNetUsers, combined_entry => combined_entry.farm_cows.AspNetUser_ID, asp_users => asp_users.Id, (combined_entry, asp_users) => new { username = asp_users.UserName, msg = combined_entry.z_alerts.message, date = combined_entry.z_alerts.date_emailsent, phoneNumber = asp_users.PhoneNumber }).Distinct(); string lastMessage = ""; string lastRecipient = ""; int messagesSent = 0; List <Log> logEntries = new List <Log>(); foreach (var row in rows) { if (DateTime.Parse(row.date.ToString()).CompareTo(DateTime.Now.AddMinutes(-30).AddHours(3)) >= 0 && DateTime.Parse(row.date.ToString()).CompareTo(DateTime.Now.AddHours(3)) <= 0 && (row.msg != lastMessage || row.phoneNumber != lastRecipient)) { string message = row.msg.Replace(';', ','); // Fill in these feilds. string login = ""; string password = ""; string url = "http://api.smsfeedback.ru/messages/v2/send/?login="******"&password="******"&phone=%2B" + row.phoneNumber + "&text=" + message; try { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = "GET"; var response = (HttpWebResponse)request.GetResponse(); if (response.StatusCode.ToString().Equals("OK")) { messagesSent++; } logEntries.Add(new Log { user_id = "Admin", page = HttpContext.Current.Request.Url.AbsoluteUri, function_query = "SendAlerts", error = response.StatusCode.ToString(), note = "message:\'" + row.msg + "\' has been sent", datestamp = DateTime.Now.AddHours(3), recipient = row.phoneNumber }); lastMessage = row.msg; lastRecipient = row.phoneNumber; } catch (global::System.Exception e) { logEntries.Add(new Log { user_id = "Admin", page = HttpContext.Current.Request.Url.AbsoluteUri, function_query = "SendAlertsError", error = e.Message, note = "message:\'" + row.msg + "\' encountered an error while sending.", datestamp = DateTime.Now.AddHours(3), recipient = row.phoneNumber }); } } } foreach (Log logRow in logEntries) { db.Logs.Add(logRow); db.SaveChanges(); } Context.Response.Output.WriteLine(messagesSent + " alert(s) were sent at " + DateTime.Now.AddHours(3).ToString() + "."); db.Logs.Add(new Log { user_id = "Admin", page = HttpContext.Current.Request.Url.AbsoluteUri, function_query = "End SendAlerts", error = null, note = "Service Finished at " + DateTime.Now.AddHours(3), datestamp = DateTime.Now.AddHours(3), recipient = null }); db.SaveChanges(); } } else { Context.Response.Output.WriteLine("SMS Service is currently disabled."); } Context.Response.End(); return(string.Empty); }