/// <summary> /// scope= list:currency /// cmd= 'get @p0. /// @p0 parameter for desired currency /// </summary> /// <returns></returns> public override async Task GetCryptoCurrency() { int parameterCount = 1; var validateResp = ValidateParameters(null, parameterCount); if (validateResp.ResponseCode != ResponseCode.Success) { await PostMessage(GetSlackExecutionErrorMessage(validateResp.ResponseData)); return; } var currency = Currency.Unknown; var parameter = Parameters[0]; if (parameter.ToLower() != "all") { currency = Statics.GetCurrency(Parameters[0]); if (currency == Currency.Unknown) { var errorMesssage = GetSlackExecutionErrorMessage(2); //post depth=2 message => Given crypto currency either not found or not supported. errorMesssage.text = string.Format(errorMesssage.text, Parameters[0]); await PostMessage(errorMesssage); return; } } var cryptoCurrencies = GetCryptoCurrencies(currency); if (!cryptoCurrencies.Any()) { // you have no balance with this crypto currency. await PostMessage(GetSlackExecutionErrorMessage(3)); return; } var successMessage = SlackMessageGenerator.GetCryptoCurrencyMessage(cryptoCurrencies, Team.MainCurrency); await PostMessage(GetSlackExecutionSuccessMessage(successMessage)); }