public async Task Invoke(CancellationToken cancellationToken) { _logger.LogInformation("Invoked timercoinmarket"); try { _logger.LogInformation(NoticeStore.NoticesCoinMarket.Count.ToString()); _logger.LogInformation(CurrencyInfoStore.CoinMarkets.Count.ToString()); NoticeStore.ClearCoinMarket(); //_alertRepository.DeleteMany(x=> x.NotifyCost == null && string.IsNullOrEmpty(x.PercentNotify)); var users = _userRepository.GetItems(z => z.NotifyCoinMarket).ToList(); //+ var currencyPairs = await _client.GetCoinMarket(); CurrencyInfoStore.AddCoinMarket(currencyPairs); var notifications = _currencyService .CreateNotifications(users, CurrencyInfoStore.CoinMarkets, 2, _alertRepository); await _notifyer.Notify(notifications); } catch (Exception e) { _logger.LogError("Timer coinmarket", e.Message); } }
public async Task Invoke(CancellationToken cancellationToken) { _logger.LogInformation("Invoked timerbittrex"); try { _logger.LogInformation(NoticeStore.NoticesBittrix.Count.ToString()); _logger.LogInformation(CurrencyInfoStore.Bittrixes.Count.ToString()); NoticeStore.ClearBittrix(); var users = _userRepository.GetItems(x => x.NotifyBittrix).ToList(); var currencyPairs = await _client.GetBittrix(); CurrencyInfoStore.AddBittrix(currencyPairs); var notifications = _currencyService.CreateNotifications(users, CurrencyInfoStore.Bittrixes, 0, _alertRepository); await _notifyer.Notify(notifications); } catch (Exception e) { _logger.LogError("Timer bittriex", e.Message); } }
public async Task Invoke(CancellationToken cancellationToken) { _logger.LogInformation("Invoked timerpoloniex"); try { var currencyPairs = await _client.GetPoloniex(); CurrencyInfoStore.AddPoloniex(currencyPairs); } catch (Exception e) { _logger.LogError("Timer poloniex", e.Message); } }
public async Task Invoke(CancellationToken cancellationToken) { _logger.LogInformation("Invoked timercoinmarket"); try { var currencyPairs = await _client.GetCoinMarket(); CurrencyInfoStore.AddCoinMarket(currencyPairs); } catch (Exception e) { _logger.LogError("Timer coinmarket", e.Message); } }
public async Task ExecuteAsync(Message message) { var currencyPairs = CurrencyInfoStore.GetLastCoinMarket(); if (currencyPairs == null) { await _client.SendTextMessageAsync(message.Chat.Id, "Some problemes"); return; } foreach (var pair in currencyPairs) { if (string.Equals(pair.FirstCurrency, message.Text.ToUpper())) { await _client.SendTextMessageAsync(message.Chat.Id, pair.GetInfo(), ParseMode.Markdown); return; } } await _client.SendTextMessageAsync(message.Chat.Id, "Currency not find"); }
public async Task ExecuteAsync(Message message) { var report = CurrencyInfoStore.GetLastPoloneix(); await _client.SendTextMessageAsync(message.Chat.Id, report, ParseMode.Markdown); }
public async Task ExecuteAsync(Message message) { try { var splitStr = message.Text.Split(' '); var currency = splitStr[1].ToUpper(); var value = splitStr[2].Replace(',', '.'); string sign = ""; double valueParsed; if (value.Contains("+") || value.Contains("-")) { valueParsed = double.Parse(value.Substring(1, value.Length - 2), CultureInfo.InvariantCulture); sign += value[0]; } else if (value.Contains("%")) { valueParsed = double.Parse(value.Substring(0, value.Length - 1), CultureInfo.InvariantCulture); } else { valueParsed = double.Parse(value.Substring(0, value.Length), CultureInfo.InvariantCulture); } var alert = _alertRepository.GetItem(z => z.UserId == message.Chat.Id && currency == z.NameCurrency); if (value.Contains("%")) { var lastCoinMarcet = CurrencyInfoStore.GetLastCoinMarket() .FirstOrDefault(z => z.FirstCurrency == currency); if (lastCoinMarcet == null) { await _client.SendTextMessageAsync(message.Chat.Id, "Currency not found"); return; } if (alert == null) { _alertRepository.Create(new Alert { NameCurrency = currency, PercentNotify = sign + valueParsed.ToString(CultureInfo.InvariantCulture), UserId = message.Chat.Id, Cost = lastCoinMarcet.Last }); } else { alert.PercentNotify = sign + valueParsed.ToString(CultureInfo.InvariantCulture); alert.Cost = lastCoinMarcet.Last; _alertRepository.Update(alert, z => z.UserId == message.Chat.Id && currency == z.NameCurrency); } } else { if (alert == null) { _alertRepository.Create(new Alert { NameCurrency = currency, NotifyCost = valueParsed, UserId = message.Chat.Id }); } else { alert.NotifyCost = valueParsed; _alertRepository.Update(alert, z => z.UserId == message.Chat.Id && currency == z.NameCurrency); } } await _client.SendTextMessageAsync(message.Chat.Id, "Success"); } catch (Exception e) { await NotSuccess(message); _logger.LogError("Exeption in SetAlertCommand", e.Message); } }