如何解决如何在 Python 中为 Discord Bot 制作验证系统?
我正在尝试制作一个适用于我的 Discord 服务器网络的验证系统。 这是我希望机器人在您输入“.agree”后执行的操作:
- 检查您是否在名为“verify_here”的频道中发送了消息。
- 如果您是在该频道中发送的,请添加“成员”角色。
- 发送消息“{message.author},谢谢!”
- 3 秒后删除两条消息。
这是我的代码:
@client.event
async def on_message(message):
verify_channel = client.get_channel(868120833858621470)
verify_role = get(member.guild.roles,id='871383440694587462')
if message.content == '.agree' in verify_channel:
await member.add_roles(message.author,verify_role)
await message.send(f'{message.author},thanks!')
奇怪的是我没有收到任何错误消息。它只是不起作用。什么都没有发生。机器人没有添加任何角色,机器人也没有发送任何消息。我试过寻求帮助,但是关于为 Python Discord Bots 制作验证系统的指南很少。我也尝试过不同的代码布局方式,但都没有奏效。
注意:我将在整个 Discord 服务器网络中使用此机器人和验证系统,这意味着我希望机器人检查频道名称而不是频道 ID。
我怎样才能做到这一点?
解决方法
使用
if message.content == '.agree' and message.channel == verify_channel:
await member.add_roles(message.author,verify_role)
await message.channel.send(f'{message.author},thanks!')
代替
if message.content == '.agree' in verify_channel:
await member.add_roles(message.author,verify_role)
await message.send(f'{message.author},thanks!')
希望这是有道理的:)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。