繁体   English   中英

当用户获得特定角色时,如何让我的机器人向我发送私人消息?

[英]How can I make my bot send me a private message when a user gets a specific role?

我正在做一个测验,当一个人回答最后一个问题时,他们会得到一个“已完成”的角色。 当他们获得角色时,我希望我的机器人向我发送私人消息。 有可能这样做吗? 谢谢

每当添加角色时,都会触发on_member_update事件。 我们可以检查该角色在事件之前不在成员的角色中,并且在更新之后存在:

from discord.utils import get

@bot.event
async def on_member_update(before, after):
    role_name = "Completed"
    if not get(before.roles, name=role_name) and get(after.roles, name=role_name):
        await bot.owner.send(f"{after.name} has finished")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM