using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.SignalR; using System.Threading.Tasks; using FinlyticCore.Dtos.News; namespace FinlyticBackend.Hubs; /// /// SignalR Hub for real-time news delivery to connected clients. /// [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()); } }