コード例 #1
0
        public async Task <IStepResult> ResultAsync(Gem gem)
        {
            try
            {
                var networkHeader = SharedMessageContent.NetworkEffectContent(gem.Recently, gem.Symbol, gem.Name);

                return(await Task.FromResult(
                           new StepResult(StepResultType.Success, networkHeader, AudienceType.FREE)));
            }
            catch (Exception ex)
            {
                return(await Task.FromResult(
                           new StepResult(StepResultType.Error, ex.GetFullMessage(), AudienceType.FREE)));
            }
        }
コード例 #2
0
        public async Task <IStepResult> ResultAsync(Gem gem)
        {
            try
            {
                var tokenData = await _uniswapService.FetchTokenAsync(gem.Id);

                var tokenInfo = SharedMessageContent.TokenAndLiquidityDataContent(gem.Recently, gem.Symbol, tokenData);

                return(new StepResult(StepResultType.Success, tokenInfo, AudienceType.PREMIUM));
            }
            catch (Exception ex)
            {
                return(await Task.FromResult(new StepResult(StepResultType.Error, ex.GetFullMessage(), AudienceType.PREMIUM)));
            }
        }
コード例 #3
0
        public async Task <IStepResult> ResultAsync(Gem gem)
        {
            try
            {
                var warningHeader = SharedMessageContent.WarningContent(gem.Recently, gem.Id);

                return(await Task.FromResult(
                           new StepResult(StepResultType.Success, warningHeader, AudienceType.FREE)));
            }
            catch (Exception ex)
            {
                return(await Task.FromResult
                           (new StepResult(StepResultType.Error, ex.GetFullMessage(), AudienceType.FREE)));
            }
        }
コード例 #4
0
        public async Task <IStepResult> ResultAsync(Gem gem)
        {
            try
            {
                var chartHeader = SharedMessageContent.ChartsContent(gem.Recently, gem.Symbol);

                return(await Task.FromResult(
                           new StepResult(StepResultType.Success, chartHeader, AudienceType.PREMIUM)));
            }
            catch (Exception ex)
            {
                return(await Task.FromResult(
                           new StepResult(StepResultType.Error, ex.GetFullMessage(), AudienceType.PREMIUM)));
            }
        }
コード例 #5
0
        public async Task <IStepResult> ResultAsync(Gem gem)
        {
            try
            {
                var pairTask = await _uniswapService.FetchPairsAsync(gem.Id);

                var pairsDetails = SharedMessageContent.TokenPairsContent(gem.Recently, pairTask);

                return(new StepResult(StepResultType.Success, pairsDetails, AudienceType.PREMIUM));
            }
            catch (Exception ex)
            {
                return(await Task.FromResult(
                           new StepResult(StepResultType.Error, ex.GetFullMessage(), AudienceType.PREMIUM)));
            }
        }
コード例 #6
0
        public async Task <IStepResult> ResultAsync(Gem gem)
        {
            try
            {
                var contractTask = await _etherScanService.IsSmartContractVerifiedAsync(gem.Id);

                var contractDetails = SharedMessageContent.TokenContractContent(gem.Recently, gem.Id, contractTask);

                return(new StepResult(StepResultType.Success, contractDetails, AudienceType.PREMIUM));
            }
            catch (Exception ex)
            {
                return(await Task.FromResult(
                           new StepResult(StepResultType.Error, ex.GetFullMessage(), AudienceType.PREMIUM)));
            }
        }
コード例 #7
0
        public async Task <IStepResult> ResultAsync(Gem gem)
        {
            try
            {
                var detailsData = await _ethPlorerService.FetchTokenInfoAsync(gem.Id);

                var tokenDetails = SharedMessageContent.TokenDetailsContent(gem.Recently, gem.Symbol, detailsData);

                return(new StepResult(StepResultType.Success, tokenDetails, AudienceType.PREMIUM));
            }
            catch (Exception ex)
            {
                return(await Task.FromResult(
                           new StepResult(StepResultType.Error, ex.GetFullMessage(), AudienceType.PREMIUM)));
            }
        }
コード例 #8
0
        public async Task <IStepResult> ResultAsync(Gem gem)
        {
            try
            {
                var topHodlersNumber = 5;

                var holdersTask = await _ethPlorerService.FetchTopHoldersAsync(gem.Id, topHodlersNumber);

                var detailsHolders = SharedMessageContent.TokenHoldersContent(gem.Recently, gem.Id, topHodlersNumber, holdersTask);

                return(new StepResult(StepResultType.Success, detailsHolders));
            }
            catch (Exception ex)
            {
                return(await Task.FromResult(new StepResult(StepResultType.Error, ex.GetFullMessage())));
            }
        }
コード例 #9
0
        public async Task <IStepResult> ResultAsync(Gem gem)
        {
            try
            {
                var header =
                    $"{SharedMessageContent.RecentlyEmoji(gem.Recently)}" +
                    $" *{gem.Recently.GetDescription()}* -" +
                    $" {gem.DexType.GetDescription().ToUpperInvariant()}\n\n" +
                    $"💎 Token: *{gem.Name}*\n" +
                    $"🚨 Symbol: *{gem.Symbol}*\n\n";

                return(await Task.FromResult(
                           new StepResult(StepResultType.Success, header, AudienceType.FREE)));
            }
            catch (Exception ex)
            {
                return(await Task.FromResult(
                           new StepResult(StepResultType.Error, ex.GetFullMessage(), AudienceType.FREE)));
            }
        }