我正在使用 Discord.js 来创建一个基础的 Discord 机器人。当机器人刚开始运行时,我运行 client.guilds.array()
来获取当前机器人已经订阅的所有服务器列表。我将这些信息保存到数据库中供其它程序使用。
然而,由于有人会添加/移除该机器人加入他们的服务器,我希望能够保持最新的服务器列表。我知道可以每分钟重新运行 clients.guilds.array()
,但这样似乎不太高效。
是否有一种事件可以在您的机器人被添加到一个服务器和/或频道时触发?根据我所读的内容,guildMemberAdd
事件似乎对已经订阅服务器的所有用户/机器人都会触发。是否有这样的事件让你的机器人知道何时已被添加到一个服务器中呢?
guildDelete
会在什么情况下被触发?如果机器人遇到连接问题,它会被触发吗?还是只有在机器人被用户实际移除时才会触发? - BenguildDelete
事件。为了避免这种情况,我建议在运行该事件中的任何内容之前先使用guild.available
。 - Syntle