public async Task <int> Do(string memberId, string supportUsername) { var support = await _chatManager.GetUserByUsername(supportUsername); var member = await _chatManager.GetUserWithChatsById(memberId); if (member.Chats.Count > 0) { return(member.Chats.First().Id); } var chatId = await _chatManager.CreateChat(new Chat { Name = member.Username }); if (chatId <= 0) { throw new ArgumentException("Failed to create chat."); } await _chatManager.AddUserToChat(chatId, member.Id); await _chatManager.AddUserToChat(chatId, support.Id); return(chatId); }
public async Task <ActionResult <Guid> > CreateChat([FromBody] ChatParticipants chatParticipants) { if (ModelState.ErrorCount > 0) { return(BadRequest(new Response { Status = "Error!", Message = "Something went wrong" })); } var chatGD = await _chatManager.CreateChat(chatParticipants); return(Ok(chatGD)); }
public void CreateChat(string chatName) => _chatManager.CreateChat(chatName);