Пример #1
0
        private async Task <(bool success, string reason)> HandleTransferToGroup(string fromUser, string responseUrl,
                                                                                 MessageContext channel, TossRequestParams p)
        {
            var channelUsers = await _slack.GetChannelMembers(channel);

            var allUsers = await _slack.GetUserListAsync();

            channelUsers = FilterBots(channelUsers, allUsers);
            if (channelUsers == null)
            {
                return(false,
                       "Если хочешь, чтоб я раскидал монеты по пользователям закрытого канала - добавь туда этого бота");
            }

            foreach (var user in channelUsers)
            {
                _logger.LogInformation($"ttg, {user}");
            }

            if (channelUsers.Length > 1)
            {
                var msg = new GiveAwayMessage(fromUser, p.Currency, responseUrl, p.Amount, channelUsers, channel, p.Comment, p.TossAll);
                LedgerActor.Address.Tell(msg);
                return(true, "Приказали гоблинам раскидать монетки всем пользователям канала...");
            }

            return(true, "Не очень-то понятно чего делать!");
        }