public ActionResult BulkTextMessage(BulkContactViewModel viewModel) { if (viewModel.Members.Count == 0) { return(RedirectToAction("ContactSelected")); } var user = unitOfWork.AppUserRepository.FindUserByEmail(User.Identity.Name); var textMessageContact = new TextMessageContact { ToPhoneNumber = string.Empty, FromPhoneNumber = user.PhoneNumber, DateSent = DateTime.Now }; var textMessageViewModel = new TextMessageViewModel { TextMessageContact = textMessageContact, Bulk = true, Members = viewModel.Members }; TempData["TextMessageViewModel"] = textMessageViewModel; RouteValueDictionary routeDictionary = new RouteValueDictionary(); routeDictionary.Add("TextMessageViewModel", textMessageViewModel); return(RedirectToAction("SendBulkTextMessage", "Sms", routeDictionary)); }
private void StoreTextMessage(TextMessageContact textMessageContact) { const string subjectTxt = "Text message"; var member = unitOfWork.MemberRepository.FindMemberById(textMessageContact.MemberId); var contactType = unitOfWork.ContactTypeRepository.Find(ct => ct.Name.Equals("Text Messaging")); // To assign user id to contact record property var user = unitOfWork.AppUserRepository.FindUserByEmail(User.Identity.Name); var contact = new ContactRecord { CCGMemberId = member.Id, Subject = subjectTxt, Comments = textMessageContact.Message, ContactDate = DateTime.Now, Timestamp = DateTime.Now, ContactTypeId = contactType.Id, AppUserId = user.Id }; unitOfWork.ContactRecordRepository.Add(contact); }
// GET public ActionResult SendTextMessage(int?id, string number) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var member = unitOfWork.MemberRepository.FindMemberById(id); string memberFullName = $"{member.FirstName} {member.LastName}"; var contact = new TextMessageContact { MemberId = (int)id, MemberFullName = memberFullName, ToPhoneNumber = number, }; var viewModel = new TextMessageViewModel { TextMessageContact = contact, Bulk = false }; // Check if testing Twillio bool testTwillio = bool.Parse(ConfigurationManager.AppSettings["TestTwillio"]); if (testTwillio) { viewModel.IsTest = testTwillio; viewModel.TestFromNumber = ConfigurationManager.AppSettings["TwillioFromNumber"]; } viewModel.HasStatusNotification = false; viewModel.StatusNotification = new NotificationViewModel(); return(View(viewModel)); }