Как получить всех членов большой гильдии разногласий. js - PullRequest
0 голосов
/ 01 мая 2020

Я пытаюсь получить идентификаторы всех членов большой гильдии. В этой гильдии около 2000 человек. Я использую это:

const list = client.guilds.get("id"); 
list.fetchMembers().then(r => {

    r.members.array().forEach(r => {
    let userid = r.id        
    msg.channel.send(userid)
    })
});

Это работает для моей тестовой гильдии из 3 человек, но как только я пробую это с большой гильдией, я получаю эту ошибку

(node:8632) UnhandledPromiseRejectionWarning: Error: Members didn't arrive in time.
at Timeout._onTimeout (c:\Users\Han75\Documents\bot\node_modules\discord.js\src\client\Client.js:436:7)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7)

Я знаю ее, потому что тайм-аут. Как мне это остановить?

1 Ответ

0 голосов
/ 01 мая 2020

Если вы используете последнюю стабильную версию (v12), вы можете использовать GuildMemberManager # fetch без аргументов, чтобы выбрать всех членов гильдии.

...