public async Task <bool> ConnectAsync() { IsConnecting = true; ConnectCommand.RaiseCanExecuteChanged(); _bridge.Connect(); HueObjectBase rv = await LoginAsync(_settings.ApplicationID.Value); if (rv.IsError()) { EventHandler eventHandler = async(s, e) => await TimerCallbackAsync(); await _messageHandler.GetResponseAsync("Information", string.Format("Please press the Link button on your bridge."), 500, 30000, MessageBoxButtons.None, eventHandler); return(false); } ExecuteGetLightsAsync(); ExecuteGetGroupsAsync(); IsConnecting = false; RaisePropertyChanged("IsConnected"); ConnectCommand.RaiseCanExecuteChanged(); return(true); }
private async void SetAlertAsync() { _isSettingAlert = true; SetAlertCommand.RaiseCanExecuteChanged(); HueObjectBase rv = await LightSourceModel.SetAlertAsync(); if (!rv.IsError()) { bool refreshed = await LightSourceModel.RefreshAttributesAsync(); if (refreshed) { IsAlerting = LightSourceModel.State.Alert != "none"; } } _isSettingAlert = false; SetAlertCommand.RaiseCanExecuteChanged(); }