25 lines
704 B
C#
25 lines
704 B
C#
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.SignalR;
|
|
using System.Threading.Tasks;
|
|
using FinlyticCore.Dtos.News;
|
|
|
|
namespace FinlyticBackend.Hubs;
|
|
|
|
/// <summary>
|
|
/// SignalR Hub for real-time news delivery to connected clients.
|
|
/// </summary>
|
|
[Authorize]
|
|
public class NewsHub : Hub
|
|
{
|
|
// Clients can call this to join specific symbol groups if needed later
|
|
public async Task SubscribeToSymbol(string symbol)
|
|
{
|
|
await Groups.AddToGroupAsync(Context.ConnectionId, symbol.ToUpperInvariant());
|
|
}
|
|
|
|
public async Task UnsubscribeFromSymbol(string symbol)
|
|
{
|
|
await Groups.RemoveFromGroupAsync(Context.ConnectionId, symbol.ToUpperInvariant());
|
|
}
|
|
}
|