重新启动或打开机器人时,请执行特定功能

问题描述 投票:0回答:1

我试图让它成为当我的机器人重新启动时,在ready.js文件中它将搜索它在机器人所在的所有公会中制作的webhooks,然后机器人将使用该webhook并通过它。我无法到达任何地方,这是在JS。

我已经提到了Discord.JS的文档,实际上还没有到达任何地方。我试图从webhook.owner获取客户端ID,看看机器人的ID是否与之匹配。我不知道如何从webhook.owner中提取客户端ID

guild.fetchWebhooks()
    if(webhook.owner == `${bot.user.id}`);

(建议)

guild.fetchWebhooks()
    if(webhook.owner == `${bot.user.username}`);

(实际)这是我能想到的唯一代码,如果需要可以添加完整文件。

我期待一个机器人,当它重新启动(bot.on)然后它将搜索它所在的所有公会,并找到它拥有的webhooks,并通过它发送消息,而不用它到另一个活跃的webhook。

最终发生的事情是我的机器人只是提出机器人的提及。

node.js visual-studio-code discord.js
1个回答
2
投票

做这样的事情:

 bot.on('ready', async () => {                          // on ready
    await bot.guilds.forEach(async guild => {           // in all guilds:
        const webhooks = await guild.fetchWebhooks();   // check for Webhooks
        await webhooks.forEach(async webhook => {       // for all found Webhooks:
            if (webhook.owner.id == bot.user.id) {      // check if bot owns them
                webhook.send('test');                   // Do something with the Webhook example
            }
        });
    });
});
© www.soinside.com 2019 - 2024. All rights reserved.