我正在创建一个机器人用于不和谐审核,该机器人的组件之一是以下任务:
“当每个新用户来到服务器时,他的角色默认为@Not会员,但当他将他的服务器昵称更改为“昵称|(真实姓名)”时,例如CoolPerson(Alex),他的角色将自动更改为@会员”。
我能看到的一种方法是检查用户名是否包含括号,如果没有,那么他的角色是old@Not会员。
是否有其他方法可以检测服务器成员是否已将其名称更改为昵称?这实际上可能吗?
我正在用JavaScript制作这个机器人,但这里也欢迎Python。
您可以使用每当成员更改姓名时触发的坚守会员更新
事件,通过此事件,您将可以访问公会成员及其旧/新用户名。请注意,您的机器人需要在开发者门户上启用服务器成员意图。
Discord. js中的示例:
client.on("guildMemberUpdate", function(oldMember, newMember) {
// oldMember is the old guild member object before the change, you
// can use it to fetch their old username.
// Add a role to the newMember object.
newMember.roles.add(YOUR_ROLE_HERE);
});