javascript - 如何使用 discord.js 跟踪谁邀请了机器人?
问题描述
如何使用 discord.js 跟踪谁在公会中邀请了 Discord 机器人?我想创建一个反机器人事件并对邀请者采取行动。
解决方案
使用审计日志就足够了(你需要给机器人权限)。使用GuildAuditLogsEntry.executor
和GuildAuditLogsEntry.target
。这是一个实现(它将检查成员是否是机器人,如果是,请执行您的选择)
client.on("guildMemberAdd", async (member) => {
if (!member.user.bot) return;
const auditLogs = await member.guild.fetchAuditLogs({type: "BOT_ADD"})
const auditLog = auditLogs.entries.first()
//you can take ban with "auditLog.executor.ban()"
//you can also ban the bot with "auditLog.target.ban"
})
在 discord.js v13 上测试
推荐阅读
- algorithm - 在二叉树中找到最长路径的算法?
- reactjs - 调整 SVG 元素鼠标的大小在边缘失去“抓地力”
- java - Modelnstance 中的网格
- tensorflow - keras中的自定义损失函数涉及巨大的矩阵乘法
- firebase - Firebase:403 PERMISSION_DENIED(FirebaseError:安装):更新SDK(FirebaseInstallationsService)后请求被阻止
- laravel - 处理公用文件夹中的图像文件时 Laravel CORS 问题?
- rider - 关闭并重新打开 IDE 后如何维护项目树状态(折叠和/或展开的项目)?
- javascript - 美国邮政编码自动添加 - 9 位数
- java - 如何避免 RadioGroup 在 RecyclerView 中检查两次
- python - 用循环重写递归函数