Обработчик MessageReceived блокирует задачу шлюза - PullRequest
0 голосов
/ 18 февраля 2020

Я хочу отправить сообщение всем, но всегда получаю сообщение «Обработчик MessageReceived блокирует задачу шлюза». при загрузке Users.

        [Command("testrole")]
        public async Task dmeveryone()
        {
            var guild = Program._client.GetGuild(Context.Guild.Id) as IGuild;
            await Context.Guild.DownloadUsersAsync();
            await Task.Delay(500);
            var users = await guild.GetUsersAsync();

            var recipients = users
                .OfType<IGuildUser>()
                .Where
                (
                    u => !u.IsBot && !u.IsWebhook
                );
            var tasks = recipients
                .Select
                (
                    r => r.SendMessageAsync("Hi")
                );
            try
            {
                await Task.WhenAll(tasks);
            }
            catch
            {
                var exceptions = tasks.Where(t => t.Exception != null)
                                      .Select(t => t.Exception);
            }
        }

Вот как я это использую, я пытался использовать:

        [Command("testrole", RunMode.Async)]

, но это не сработает ...

...