public async Task <Message> Collect(string argument, ulong channelId, ulong userId, string username) { var arguments = argument.ToUpper().TrimStart().Split(' '); if (arguments.Length != 1) { return(_messagesHelper.InvalidArguments(new[] { "<Claim Id>" }, "Collect", "Collect")); } try { var collectId = Convert.ToInt32(arguments[0]); var reward = await _coindropConnector.CollectCoinDrop(channelId, collectId); if (reward != 0) { await _usersConnector.GiveCredits(userId, reward); return(_messagesHelper.CoinDropSuccessful(reward, username)); } return(_messagesHelper.CoinDropTooLate()); } catch (Exception) { return(_messagesHelper.InvalidArguments(new[] { "<Claim Id>" }, "Collect", "Collect")); } }