private async Task InternalBalanceCheck() { try { var balance = await _paymentService.GetMainAccountBalance(); if (balance < _settings.MainAccountMinBalance) { string message = $"Main account {_settings.EthereumMainAccount} balance is less that {_settings.MainAccountMinBalance} ETH !"; await _logger.WriteWarning("EthereumWebJob", "InternalBalanceCheck", "", message); if (!_balanceWarningSended) { _emailNotifier.Warning("Ethereum worker", message); } _balanceWarningSended = true; } else { // reset if balance become higher _balanceWarningSended = false; } } catch (Exception e) { await _logger.WriteError("EthereumWebJob", "InternalBalanceCheck", "", e); } }
public async Task <string> GetContract() { var contract = await _queue.Pop(); if (string.IsNullOrWhiteSpace(contract)) { _emailNotifier.Warning("Ethereum", "User contract pool is empty!"); throw new BackendException(BackendExceptionType.ContractPoolEmpty); } return(contract); }
private async Task InternalBalanceCheck() { try { var balance = await _paymentService.GetMainAccountBalance(); if (balance < _settings.MainAccountMinBalance) { _emailNotifier.Warning("Ethereum worker", $"Main account {_settings.EthereumMainAccount} balance is less that {_settings.MainAccountMinBalance} ETH !"); } } catch (Exception e) { await _logger.WriteError("EthereumWebJob", "InternalBalanceCheck", "", e); } }