public async Task SendMessage(string name, string text) { var message = new ChatMessage { SenderName = name, Text = text, SentAt = DateTimeOffset.UtcNow }; await chatRoomService.AddMessage(message); // Broadcast to all clients await Clients.All.SendAsync( "ReceiveMessage", message.SenderName, message.SentAt, message.Text); var isGameStarted = await chatRoomService.IsGameStarted(); if (isGameStarted) { var currentWord = await chatRoomService.GetCurrentWord(); if (currentWord == text) { message = new ChatMessage { SenderName = "Crocodili", Text = $"{name} win!", SentAt = DateTimeOffset.UtcNow }; await chatRoomService.AddMessage(message); // Broadcast to all clients await Clients.All.SendAsync( "ReceiveMessage", message.SenderName, message.SentAt, message.Text); await StopGame(); await StartGame(); } } }
public async Task SendMessage(string name, string text, string RoomName) { var message = new ChatMessage { SenderName = name, Text = text, SentAt = DateTimeOffset.UtcNow }; await _chatRoomService.AddMessage(RoomName, message); //await Clients.Group(RoomName).SendAsync( // "ReceiveMessage", // message.SenderName, // message.SentAt, // message.Text); await Clients.Group(RoomName).SendAsync( "ReceiveMessage", message); }
public async Task SendMessage(string name, string text) { var roomId = await _chatRoomService.GetRoomForConnectionId(Context.ConnectionId); var message = new ChatMessage { SenderName = name, Text = text, SendAt = DateTimeOffset.Now }; await _chatRoomService.AddMessage(roomId, message); await Clients.Group(roomId.ToString()).SendAsync("ReciveMessage", message.SenderName, message.SendAt, message.Text); }
public async Task SendAgentMessage(Guid roomId, string text) { var message = new ChatMessage { SenderName = Context.User.Identity.Name, Text = text, SentAt = DateTimeOffset.Now }; await _chatRoomService.AddMessage(roomId, message); await _chatHub.Clients .Group(roomId.ToString()) .SendAsync("ReceiveMessage", message.SenderName, message.SentAt, message.Text); }
//metoda koju ce klijent da poziva, imace parametre name (ime ko salje) i text - tekst poruke public async Task SendMessage(string name, string text) { var roomId = _chatRoomService.GetRoomForConnectionId(Context.ConnectionId); //objekat koji se kreira iz ChatMessage modela koji se nalazi u Models folderu var message = new ChatMessage { SenderName = name, Text = text, SentAt = DateTimeOffset.UtcNow }; await _chatRoomService.AddMessage(roomId, message); //prenosenje poruke Svim klijentima await Clients.Group(roomId.ToString()).SendAsync( "ReceiveMessage", //ime metode koju pozivamo na klijentu i prosledjujemo sve parametre koje saljemo klijentu message.SenderName, message.SentAt, message.Text); }