检查特定用户是否响应discord.py

检查特定用户是否响应discord.py,discord,discord.py,discord.py-rewrite,Discord,Discord.py,Discord.py Rewrite,我正在寻找一个脚本,以检查执行命令的用户(ctx.message.author)是否对消息做出了带有复选标记的反应,它应该如下所示: @client.command() async def test(ctx): message = await ctx.send("Test") for emoji in ('✅'): await message.add_reaction(emoji) # Here it should detect if the c

我正在寻找一个脚本,以检查执行命令的用户(
ctx.message.author
)是否对消息做出了带有复选标记的反应,它应该如下所示:

@client.command()
async def test(ctx):
    message = await ctx.send("Test")
    for emoji in ('✅'):
        await message.add_reaction(emoji) 
        # Here it should detect if the ctx.message.author has reacted

您可以通过用户ID并使用
wait\u for
进行检查:

import asyncio#用于异常
@client.command()
异步def测试(ctx):
消息=等待ctx发送(“测试”)
用于表情符号✅'):
等待消息。添加反应(表情符号)
尝试:
#仅当满足以下条件时,才会注册wait_for
def检查(rctn,用户):
返回user.id==ctx.author.id和str(rctn)='✅'
#超时kwarg是可选的
rctn,用户=等待客户端。等待(“反应添加”,检查=检查,超时=30)
#如果作者有反应,请在此处执行代码,如下所示:
等待ctx.send(“我发现作者有反应!”)
#如果用户未及时作出反应,则引发此错误
#如果不在wait_for()中提供超时kwarg,就不需要这个
除asyncio.TimeoutError外:
等待ctx.send(“对不起,您没有及时做出反应!”)

参考文献: