/// <summary> /// Trys to establish a connection with a given Bridge and navigates to RegisterApplication; /// </summary> /// <param name="ipAddress">The IP address of the Bridge</param> private void ConfigureIPAddress(string ipAddress) { if (ConnectToBridge.SelectBridge(ipAddress)) { Frame.Navigate(typeof(RegisterApplication)); } }
private async void YesAPIPopup_Click(object sender, RoutedEventArgs e) { APIKeyPopup.Scale = new Vector3(0, 0, 0); await Task.Delay((int)APIKeyPopup.ScaleTransition.Duration.TotalMilliseconds); APIKeyPopup.Visibility = Visibility.Collapsed; ShowAPIKeyButton.Visibility = Visibility.Collapsed; APIKey.Text = ConnectToBridge.GetAppKey(); APIKey.Visibility = Visibility.Visible; }
private bool ConnectToSavedBridge() { if (ConnectToBridge.SelectBridgeWithSavedIPAddress()) { if (ConnectToBridge.InitializeKey()) { return(true); } } return(false); }
private void PassOn() { if (!TelemetryService.HasTelemetryConfig() || (BridgeInformation.demoMode && !BridgeInformation.showedDemoModeIntroduction)) { mainShell.ShowIntroduction(); return; } if (BridgeInformation.isConnected) { FillWithInformation(); mainShell.userCanUseNav = true; return; } if (!ConnectToBridge.HasIPAddress()) { this.Frame.Navigate(typeof(FindBridge)); return; } if (!ConnectToBridge.HasAppKey()) { if (ConnectToBridge.SelectBridgeWithSavedIPAddress()) { this.Frame.Navigate(typeof(RegisterApplication)); return; } } if (!BridgeInformation.isConnected && !BridgeInformation.demoMode) { if (ConnectToSavedBridge()) { _ = TelemetryService.SendTelemetryReport(); mainShell.userCanUseNav = true; if (BridgeInformation.redirectToLightControl) { BridgeInformation.redirectToLightControl = false; mainShell.NavigateToPageAndSelect(1); } else { FillWithInformation(); } return; } } }
/// <summary> /// Updates every 5 secondes the buttons of the available Bridges. /// </summary> private async Task UpdateAvailableBridges() { Q42.HueApi.Models.Bridge.LocatedBridge[] bridges = await ConnectToBridge.LocateAllBridges(); while (true) { bridges = await ConnectToBridge.LocateAllBridges(); HideAllAvailableBridges(); ShowAvailableBridges(bridges); await Task.Delay(5000); } }
/// <summary> /// Trys to register this application every 5 seconds. If successful, it sets BridgeInformation.redirectToLightControl to false and navigates to BridgeConfig. /// </summary> private async Task UpdateAvailableBridges() { await Task.Delay(5000); while (true) { if (await ConnectToBridge.RegisterApplication()) { Connection.BridgeInformation.redirectToLightControl = false; Frame.Navigate(typeof(BridgeConfig)); break; } await Task.Delay(5000); } }