public static Chat CreateChat(AddMessageDTO messageDTO) { var chat = new Chat { Id = Guid.NewGuid().ToString(), Member1 = messageDTO.SenderId, Member2 = messageDTO.TargetId, LastMessage = messageDTO.Message }; chat.Messages = new List <Message> { new Message { Content = messageDTO.Message, ChatId = chat.Id, ReceiverId = messageDTO.TargetId, SenderId = messageDTO.SenderId, Id = Guid.NewGuid().ToString(), CreationTime = DateTime.Now, ReadableTime = DateTime.Now.ToString("HH:mm"), Seen = false } }; return(chat); }
public IActionResult CreateChat([FromBody] AddMessageDTO messageDTO) { var chat = Mapper.CreateChat(messageDTO); _context.Chats.Add(chat); _context.SaveChanges(); return(Ok()); }
public async Task <ActionResult <AddMessageDTO> > PostGeoComment(AddMessageDTO geoMessageDTO) { var user = await _userManager.GetUserAsync(this.User); var geoMessage = geoMessageDTO.ToModel(user); _context.GeoMessages.Add(geoMessage); await _context.SaveChangesAsync(); return(CreatedAtAction("GetGeoComment", new { id = geoMessage.Id }, geoMessageDTO)); }
public IActionResult Put([FromBody] AddMessageDTO addMessageDTO) { if (emailManager.AddMessage(addMessageDTO)) { return(Ok()); } else { return(BadRequest()); } }
public void PutMessageIntoChat([FromBody] AddMessageDTO AddMessageDTO) { Repo.PutMessageIntoChat(AddMessageDTO.ChatId, AddMessageDTO.Message, AddMessageDTO.IsFromAgent); long TelegramChatId = Repo.GetTelegramChatIdByConversationId(AddMessageDTO.ChatId); if (TelegramChatId != 0) { updateService.SendMessageToTelegram(TelegramChatId, AddMessageDTO.Message); } }
public bool AddMessage(AddMessageDTO addMessageDTO) { try { Message message = new Message() { Email = addMessageDTO.Email, Name = addMessageDTO.Name, Text = addMessageDTO.Text, Date = DateTime.Now }; dbContext.Messages.Add(message); dbContext.SaveChanges(); AddActionDTO action = new AddActionDTO() { Ip = addMessageDTO.Ip, ActionTypeId = 2, DeviceTypeId = addMessageDTO.DeviceTypeId }; actionManager.AddAction(action); emailSender.SendEmail(new List <string>() { "*****@*****.**", "*****@*****.**" }, $"Новое сообщение от {addMessageDTO.Name}", FormMessageText(addMessageDTO)); SendFeedback(addMessageDTO); return(true); } catch (Exception ex) { return(false); } }
private bool SendFeedback(AddMessageDTO addMessageDTO) { try { if (!Regex.IsMatch(addMessageDTO.Email, @"^\S+@\S+$")) { return(false); } FeedbackMessageText(addMessageDTO, out string messageSubject, out string messageText); emailSender.SendEmail(new List <string>() { addMessageDTO.Email }, messageSubject, messageText); return(true); } catch (Exception ex) { return(false); } }
private void FeedbackMessageText(AddMessageDTO addMessageDTO, out string messageSubject, out string messageText) { switch (addMessageDTO?.Language) { case "Rus": { messageSubject = "Ваше сообщение было доставлено!"; messageText = $"Здравствуйте, <b>{addMessageDTO.Name}</b>!<br>Мы получили Ваше сообщение:<br>" + $"<em>\"{addMessageDTO.Text}\"</em>.<br>С Вами свяжутся в ближайшее время." + $"<br>С уважением, <b>команда Uption</b>!"; break; }; case "Ukr": { messageSubject = "Ваше повідомлення було доставлено!"; messageText = $"Привіт, <b>{addMessageDTO.Name}</b>!<br>Ми отримали Ваше повідомлення:<br>" + $"<em>\"{addMessageDTO.Text}\"</em>.<br>З Вами зв'яжуться найближчим часом." + $"<br>З повагою, <b>команда Uption</b>!"; break; }; case "Eng": { messageSubject = "Your message has been delivered!"; messageText = $"Hello, <b>{addMessageDTO.Name}</b>!<br>We have received your message:<br>" + $"<em>\"{addMessageDTO.Text}\"</em>.<br>You will be contacted shortly." + $"<br>Regards, <b>Uption team</b>!"; break; } default: { throw new Exception("Language is undefined in switch."); } } }
private string FormMessageText(AddMessageDTO addMessageDTO) { return($"<b>Отправитель:</b><br>{addMessageDTO.Name} ({addMessageDTO.Email}).<br><b>Текст:</b>" + $"<br>{addMessageDTO.Text}<br><b>Язык общения:</b> <em>{addMessageDTO.Language}.</em>"); }