LiveChat/Hubs/ChatHub.cs

31 lines
898 B
C#
Raw Normal View History

2023-03-27 13:30:27 +00:00
using Microsoft.AspNetCore.SignalR;
namespace LiveChat.Server.Hubs;
public class ChatHub : Hub
{
2023-05-28 15:35:51 +00:00
public async Task SendMessageRoom(string user, string message, string room)
{
using (var db = new ChattingContext())
{
var messageData = new RoomChatMessage()
{
User = user,
Message = message,
2023-05-29 20:18:24 +00:00
RoomId = room,
2023-05-28 15:35:51 +00:00
};
2023-05-29 20:18:24 +00:00
db.RoomChatMessages.Add(messageData);
2023-05-28 15:35:51 +00:00
await Clients.Group(room).SendAsync("ReceiveMessage", user, message);
db.SaveChanges();
}
}
public async Task JoinRoom(string room, string user)
{
await Groups.AddToGroupAsync(Context.ConnectionId, room);
2023-05-29 20:18:24 +00:00
await Groups.AddToGroupAsync(Context.ConnectionId, "Folk_i_rom");
2023-05-28 15:35:51 +00:00
await Clients.Caller.SendAsync("ConnectionIdReceive", Context.ConnectionId);
}
2023-03-27 13:30:27 +00:00
}