我正在根据文档正确地实现命令,而是使用上下文和命令修饰符而不是on_message侦听器来实现,将我的命令移交给我是很痛苦的,但是文档还是非常有用的。不幸的是,我遇到了一个阻止我发送消息的问题...
在搬家之前,我发送邮件的方式就是这样
@client.event
async def on_message(message):
if message.author.id in AdminID:
await client.send_message(message.channel. 'message')
不幸的是,这不适用于新格式,因为没有消息参数可以从中获取信息,您要做的是使用ctx(上下文)参数,根据文档,它看起来像这样
@bot.command()
async def test(ctx, arg):
await ctx.send(arg)
尽管机器人可以识别命令并到达那里,但我无法发送消息,因为send不是ctx的属性,该代码已从文档中删除,我是否缺少某些内容?有人可以帮我解决这个问题吗?谢谢
答案 0 :(得分:1)
您正在查找与所用库不同版本的文档。
您正在使用0.16
版,也称为“异步”分支。该分支的文档为here
您正在阅读1.0
版本的文档,也称为rewrite分支。
您的命令类似于
@bot.command(pass_context=True)
async def test(ctx):
if ctx.message.author.id in AdminID:
await client.send_message(ctx.message.channel, 'message')