public async Task <IResponse> StartCommand(long telegramId, string token) { var errorResponse = ChainResponse.Create() .AddResponse(TextResponse.Create("Что-то пошло не так, попробуйте еще раз")); var isValidToken = await authorizationProvider.IsValidAuthorizationToken(token); if (!isValidToken) { return(errorResponse); } try { await authorizationProvider.CheckOrInitializeWorkspace(token); userTokenStorage.Set(telegramId, new TrelloApiToken { Token = token }); return(TextResponse.Create(@" Отлично! Авторизация успешно пройдена! Теперь в твоем Trello аккаунте появилась новая таблица `TrelloTaskManager`. В ней ты найдешь 3 листа, работа с которыми и происходит внутри этого бота. Так же, ты можешь сам зайти на доску и добавить задачу в нужный тебе лист. Данные автоматически будут синхронизированны. ")); } catch { return(errorResponse); } }
public bool Consensus() { foreach (var node in Nodes) { var client = new HttpClient(); var response = client.GetAsync($"{node}/chain/chain"); response.Wait(); ChainResponse chain = null; if (response.Result.IsSuccessStatusCode) { chain = response.Result.Content.ReadAsAsync <ChainResponse>().Result; } if (chain == null) { return(false); // error reading remote chain } if (chain.Length > LastBlock.index && ValidChain(chain.Chain)) { // replace our chain Chain = chain.Chain; return(true); } } return(false); }
public ChainResponse ToNext(IReport itemToBePassed) { ChainResponse response = approver.Approve(itemToBePassed); if (response == ChainResponse.Denied) { return(next.ToNext(itemToBePassed)); } return(response); }
public IActionResult Chain() { var chain = _blockchain.FullChain; var response = new ChainResponse { Chain = chain, Length = chain.Count }; return(Ok(response)); }