using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Microsoft.AspNet.SignalR; using Step.NC; namespace Step.Controllers.SignalR { public class NcHub : Hub { public static List ConnectedClients = new List(); public static bool NewConnectedClients = false; public override Task OnConnected() { Groups.Add(Context.ConnectionId, "ncData"); NewConnectedClients = true; ConnectedClients.Add(Context.ConnectionId); return base.OnConnected(); } public override Task OnReconnected() { Groups.Add(Context.ConnectionId, "ncData"); NewConnectedClients = true; ConnectedClients.Add(Context.ConnectionId); return base.OnReconnected(); } public override Task OnDisconnected(bool stopCalled) { Groups.Remove(Context.ConnectionId, "ncData"); ConnectedClients.Remove(Context.ConnectionId); return base.OnDisconnected(stopCalled); } public void PutPowerOnData(uint id) { using (NcHandler ncHandler = new NcHandler()) { ncHandler.Connect(); ncHandler.PutPowerOnData(id); } } public void RefreshAllAlarms() { using (NcHandler ncHandler = new NcHandler()) { ncHandler.Connect(); ncHandler.RefreshAllAlarms(); } } public void RefreshAlarm(string id) { } } }