public IActionResult SendMessage([FromQuery(Name = "id")] int id, [FromBody] MessageRequestDto message) { if (id == 0) { return(new NotFoundObjectResult("Cannot resolve this url")); } var chatRoom = ChatRoomRepository.GetById(id); if (chatRoom == null) { return(new NotFoundObjectResult($"Cannot find chat room with id {id}")); } var existingUser = chatRoom.Users.FirstOrDefault(x => x.UserName == message.Name); if (existingUser == null) { return(new NotFoundObjectResult($"User with name {message.Name} not found in chat with id = {id}")); } var hubMessage = new MessageResponseDto { Name = existingUser.UserName, Message = message.Message, Time = DateTime.Now }; return(new OkObjectResult(hubMessage)); }
public IActionResult JoinChat([FromQuery(Name = "id")] int id, [FromBody] UserRequestDto user) { if (id == 0) { return(new NotFoundObjectResult("Cannot resolve this url")); } var chatRoom = ChatRoomRepository.GetById(id); if (chatRoom == null) { return(new NotFoundObjectResult($"Cannot find chat room with id {id}")); } var existingUser = chatRoom.Users.FirstOrDefault(x => x.UserName == user.Name); if (existingUser != null) { return(new ConflictObjectResult($"User with name {user.Name} already in room")); } chatRoom.Users.Add(new Connection { UserName = user.Name, }); ChatRoomRepository.Save(); return(new OkResult()); }
private async void MakeChatroom(int bobs_ID) { Response res = Task.FromResult <Response>(await ChatRoomRepository.PostChatRoom(bobs_ID)).Result; if (res.Success == true) { VindRitChatVM.ID = res.NewID.Value; Bob.All bob = VindRitVM.SelectedBob; Libraries.Socket socketSendToBob = new Libraries.Socket() { From = MainViewVM.USER.ID, //from user To = bob.User.ID, //to bob Status = true, Object = res.NewID.Value }; Libraries.Socket socketSendToUser = new Libraries.Socket() { From = bob.User.ID, //from bob To = MainViewVM.USER.ID, //to user Status = true, Object = res.NewID.Value }; MainViewVM.socket.Emit("chatroom_OPEN:send", JsonConvert.SerializeObject(socketSendToBob)); //bob MainViewVM.socket.Emit("chatroom_OPEN:send", JsonConvert.SerializeObject(socketSendToUser)); //bob } }
public UnitOfWork(DataContext context) { _context = context; Auth = new AuthRepository(_context); ChatRoom = new ChatRoomRepository(_context); Message = new MessageRepository(_context); ChatUser = new ChatUserRepository(_context); User = new AuthRepository(_context); }
public static async Task GenerateData(ChattyContext context) { var chatRoomRepository = new ChatRoomRepository(context); chatRoomRepository.Create(new ChatRoom { Name = "Default Room", }); await chatRoomRepository.SaveChangesAsync(); }
public IActionResult GetById([FromQuery(Name = "id")] int id) { if (id == 0) { return(new NotFoundObjectResult("Cannot resolve this url")); } var chatRoom = ChatRoomRepository.GetById(id); if (chatRoom == null) { return(new NotFoundObjectResult($"Cannot find chat room with id {id}")); } return(new OkObjectResult(new ChatRoomResponseDto(chatRoom))); }
public IActionResult Create(ChatRoomRequestDto chatroom) { if (ChatRoomRepository.GetByName(chatroom.Name) != null) { return(new ConflictObjectResult($"Room with name {chatroom.Name} already exists")); } var newChatRoom = new ChatRoom { Name = chatroom.Name, Status = "live", Uuid = Guid.NewGuid().ToString() }; ChatRoomRepository.Create(newChatRoom); return(new OkObjectResult(new ChatRoomResponseDto(newChatRoom))); }
private async void GetChatComments() { await CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() => { ChatRoom.All lijst = await ChatRoomRepository.GetChatRoom(MainViewVM.ChatRoom.ID); if (lijst.ChatComments != null) { for (int i = 0; i < lijst.ChatComments.Count; i++) { HorizontalAlignment aligment = HorizontalAlignment.Left; SolidColorBrush background = new SolidColorBrush(Color.FromArgb(255, 199, 199, 204)); SolidColorBrush forground = new SolidColorBrush(Color.FromArgb(255, 0, 0, 0)); if (lijst.ChatComments[i].FromUser_ID == MainViewVM.USER.ID) { aligment = HorizontalAlignment.Left; background = new SolidColorBrush(Color.FromArgb(255, 199, 199, 204)); forground = new SolidColorBrush(Color.FromArgb(255, 0, 0, 0)); } else { aligment = HorizontalAlignment.Right; background = new SolidColorBrush(Color.FromArgb(255, 76, 217, 100)); forground = new SolidColorBrush(Color.FromArgb(255, 255, 255, 255)); } lijst.ChatComments[i].Alignment = aligment; lijst.ChatComments[i].Background = background; lijst.ChatComments[i].Foreground = forground; } } else { //geen comments } this.ChatRoom = lijst; RaiseAll(); }); }
public IActionResult Exit([FromQuery(Name = "id")] int id, [FromBody] UserRequestDto user) { if (id == 0) { return(new NotFoundObjectResult("Cannot resolve this url")); } var chatRoom = ChatRoomRepository.GetById(id); if (chatRoom == null) { return(new NotFoundObjectResult($"Cannot find chat room with id {id}")); } var existingUser = chatRoom.Users.FirstOrDefault(x => x.UserName == user.Name); if (existingUser == null) { return(new NotFoundObjectResult($"User with name {user.Name} not found in chat with id = {id}")); } ConnectionsRepository.DeleteUserFromChat(user.Name, chatRoom); return(new OkResult()); }
private async Task <Boolean> AddComment_task() { ChatComment comment = new ChatComment() { ChatRooms_ID = MainViewVM.ChatRoom.ID, Comment = this.ChatComment }; Response res = await ChatRoomRepository.PostChatComment(comment); if (res.Success == true) { int bobID = ChatRoom.ChatRoom.Bobs_ID; Bob.All bob = Task.FromResult <Bob.All>(await BobsRepository.GetBobById(bobID)).Result; int userID = ChatRoom.ChatRoom.Users_ID; Libraries.Socket socketSendToBob; Libraries.Socket socketSendToUser; if (MainViewVM.USER.IsBob == false) { socketSendToBob = new Libraries.Socket() { From = MainViewVM.USER.ID, To = bob.User.ID, Status = true, Object = comment.Comment, Object2 = true }; socketSendToUser = new Libraries.Socket() { From = bob.User.ID, To = ChatRoom.ChatRoom.Users_ID, Status = true, Object = comment.Comment, Object2 = false }; } else { socketSendToBob = new Libraries.Socket() { From = MainViewVM.USER.ID, To = bob.User.ID, Status = true, Object = comment.Comment, Object2 = false }; socketSendToUser = new Libraries.Socket() { From = bob.User.ID, To = ChatRoom.ChatRoom.Users_ID, Status = true, Object = comment.Comment, Object2 = true }; } MainViewVM.socket.Emit("chatroom_COMMENT:send", JsonConvert.SerializeObject(socketSendToUser)); MainViewVM.socket.Emit("chatroom_COMMENT:send", JsonConvert.SerializeObject(socketSendToBob)); this.ChatComment = ""; RaiseAll(); } return(res.Success); }
/// <summary> /// Saves given chat room and returns latest chat room list. /// </summary> /// <param name="chatRoomName">Chat room name.</param> /// <returns>Latest chat room list.</returns> public static List <ChatRoom> SaveAndGetLatestChatRoomList(string chatRoomName) { return(ChatRoomRepository.SaveAndGetLatestChatRoomList(chatRoomName)); }
/// <summary> /// Lists all recorded chat rooms. /// </summary> /// <returns>Chat room list.</returns> public static List <ChatRoom> ListChatRooms() { return(ChatRoomRepository.ListChatRooms()); }
public ChatRoomMessagesController(ChatRoomRepository chatRoomRepository) =>
public ChatRoomWebSocketMiddleware(RequestDelegate next, ChatRoomRepository chatRoomRepository) { _next = next; _chatRoomRepository = chatRoomRepository; }
public ChatRoomController(ChatRoomRepository chatRoomRepository) { repository = chatRoomRepository; }