【发布时间】:2020-10-06 19:10:29
【问题描述】:
我正在尝试制作一个机器人,它会在成员加入服务器时执行某些操作。更准确地说,它必须给他们一些角色并 DM 成员。
@client.event
async def on_member_join(member):
roles = {"Level": 705112591927869513, "Interests": 705116168444444773, "Region": 725984087948656710,
"Subscriptions": 705122149152850062}
member_role = discord.utils.get(member.guild.roles, name = "member")
await member.add_roles(member_role)
for role in roles.keys():
newrole = discord.utils.get(member.guild.roles, id = roles[role])
await member.add_roles(newrole)
await member.send("Welcome to the server! Please read the rules and verify yourself to be able to type! "
"Link to jump directly to the message - link")
我的问题是,由于某种原因,它不能始终如一地工作。有时它会提供所有角色,其他人只是成员之一,而其他人则根本没有。我知道并非所有成员都会获得 DM(因为隐私设置),这很好,但我真的不明白为什么不是所有成员在加入时都获得所有角色。提前致谢!
【问题讨论】:
标签: python discord discord.py