public SystemStatus(DiscordBot discordBot, IHubContext <StatusHub> statusHubContext) { statusHub = statusHubContext; discordClient = discordBot.DiscordClient; StatusUpdateTimer = new System.Timers.Timer(5000); StatusUpdateTimer.Elapsed += UpdateStatusFromEvent; StatusUpdateTimer.AutoReset = true; StatusUpdateTimer.Enabled = true; discordClient.SystemStatus = this; InitialiseDictionary(); }
public StatusHub(DiscordBot discordBot, IHubContext <StatusHub> statusHubContext) { discordClient = discordBot.DiscordClient; // Check if DiscordClient already has a SystemStatus object if (discordBot.DiscordClient.SystemStatus == null) { SystemStatus = new SystemStatus(discordBot, statusHubContext); // SystemStatus constructor already sets DiscordClient property to itself, so no need to set it manually. } else { // Use the existing object. SystemStatus = discordBot.DiscordClient.SystemStatus; } // Subscribe to event. SystemStatus.StatusChanged += this.UpdateStatus; }