public void Start() { var siteUrl = Settings.Default.SiteUrl; var portNumber = Settings.Default.PortNumber; var uri = string.Format("http://*:{0}{1}", portNumber, siteUrl); const string url = "http://localhost:11000"; SmartDBEntities.SetConnection(Settings.Default.DBServer, Settings.Default.DBName, Settings.Default.DBUser, Encryption.Decrypt(Settings.Default.DBPassword)); Program.ProcessLog.Write("Database connection string to " + Settings.Default.DBServer + " has successfully been made."); if (SmartDBEntities.IsDBAvailable) Program.ProcessLog.Write("Database connection " + Settings.Default.DBServer + " has successfully been made."); else Program.ProcessLog.Write("Database connection " + Settings.Default.DBServer + " has failed."); StartOptions options = new StartOptions(); options.Urls.Add(string.Format("http://{0}:11000", Environment.MachineName)); options.Urls.Add("http://localhost:11000/"); options.Urls.Add(uri); dashboardAdapter = new DashboardAdapter(Settings.Default.ImageBrokerAddress, $"Dashboard:{Guid.NewGuid()}"); //dashboardAdapter = new DashboardAdapter(Settings.Default.ImageBrokerAddress, // string.Format("Dashboard:{0}", Guid.NewGuid())); dashboardAdapter.Register(); Console.WriteLine(string.Format("Image Broker Configured At: {0}", Settings.Default.ImageBrokerAddress)); Program.ProcessLog.Write("Image broker has been configured to connect to " + Settings.Default.ImageBrokerAddress); Console.WriteLine(string.Format("Trying to connect to Image Broker: {0}", Settings.Default.ImageBrokerAddress)); if (dashboardAdapter.IsConnected) { Console.WriteLine(string.Format("Connected to Image Broker: {0}", Settings.Default.ImageBrokerAddress)); Program.ProcessLog.Write("The image broker is connected"); } else { Console.WriteLine(string.Format("Not connected to image broker")); Program.ProcessLog.Write("The image broker is not connected"); } host = WebApp.Start<Startup>(options); var hubConnection = new HubConnection(url); var hubProxy = hubConnection.CreateHubProxy("MyHub"); hubConnection.Start().ContinueWith(task => { }).Wait(); var timer = new Timer(x => { if (ConnectionMapping.Count <= 1) return; hubProxy.Invoke("Send").Wait(); }, null, 0, 2000); }