//async private Task Send(SqlConnection conn, CustomerInfo customer, SendGroup sendGroup) //{ // var templateContent = new List<Mandrill.Models.TemplateContent>(); // templateContent.Add(new Mandrill.Models.TemplateContent() // { // Name = "loanNumber", // Content = customer.LoanNumber // }); // templateContent.Add(new Mandrill.Models.TemplateContent() // { // Name = "firstName", // Content = customer.FirstName // }); // var mndEmail = new List<Mandrill.Models.EmailAddress>(); // mndEmail.Add(new Mandrill.Models.EmailAddress(customer.Email, customer.FirstName)); // var message = new Mandrill.Models.EmailMessage() // { // To = mndEmail, // FromName = FromName, // FromEmail = FromEmail, // Subject = Subject // }; // var msqRequest = new Mandrill.Requests.Messages.SendMessageTemplateRequest(message, MandrillTemplate, templateContent); // var results = await mandrill.SendMessageTemplate(msqRequest); // foreach (var result in results) // { // customer.SendSuccessful = result.Status.ToString() == "sent" || result.Status.ToString() == "Sent"; // if (customer.SendSuccessful == false) // { // WriteReport("Unable to send email to customer with Loan #" + customer.LoanNumber + ", reason:" + result.RejectReason); // } // //customer.SendSuccessful = true; // } // if (customer.SendSuccessful) // { // var r = MarkRemotely(conn, customer, sendGroup); // if (r == 0) // { // WriteReport("Failed to updated DB for customer with Loan #" + customer.LoanNumber, EventLogEntryType.Error); // } // } //} private int MarkRemotely(SqlConnection conn, CustomerInfo customer, SendGroup sendGroup) { var sql = "update dbo." + DatabaseTable + " set " + sendGroup.field + " = GETDATE() where LoanNumber = '" + customer.LoanNumber + "'"; SqlCommand cmd = new SqlCommand(sql, conn); return(cmd.ExecuteNonQuery()); }
private List <CustomerInfo> fetchLatest(SqlConnection conn, SendGroup sendGroup) { //ListResult lists = mailChimp.GetLists(); var list = new List <CustomerInfo>(); try { SqlDataReader reader = null; var sql = "select * from dbo." + DatabaseTable + " where DaysLate between @from and @to and " + sendGroup.field + " is null and CellPhone is not null and CellPhone != ''"; SqlCommand cmd = new SqlCommand(sql, conn); cmd.Parameters.Add(new SqlParameter("@from", sendGroup.from)); cmd.Parameters.Add(new SqlParameter("@to", sendGroup.to)); reader = cmd.ExecuteReader(); while (reader.Read()) { var customer = new CustomerInfo { FirstName = reader["Borrower"].ToString(), CellPhone = reader["CellPhone"].ToString(), LoanNumber = reader["LoanNumber"].ToString() }; list.Add(customer); } reader.Close(); } catch (Exception e) { WriteReport(e.ToString(), EventLogEntryType.Error); } return(list); }
async private Task SendSms(SqlConnection conn, CustomerInfo customer, SendGroup sendGroup) { /*twilio.SendMessage( * twilioSetFinancialPhoneNumber,//SET Financial Number - must be an SMS-enabled Twilio number * customer.CellPhone, // To number, if using Sandbox see note above * // message content * string.Format(twilioMessageFormat, customer.FirstName, customer.LoanNumber) * ); */ twilio.SendMessageWithService("MGf9553c29a398e34a09bbef6b3a3fad6e", customer.CellPhone, string.Format(twilioMessageFormat, customer.FirstName, customer.LoanNumber) ); var r = MarkRemotely(conn, customer, sendGroup); if (r == 0) { WriteReport("Failed to updated DB for customer with Loan #" + customer.LoanNumber, EventLogEntryType.Error); } }