不协调机器人响应短语(Discord.py重写)

时间:2018-09-22 19:03:15

标签: python python-3.x discord discord.py discord.py-rewrite

现在,我正在尝试为Discord Bot(使用Discord.py Rewrite包)编写一个事件,该事件将在聊天中发送某些短语时发送图像。

根据我遇到的错误消息,它似乎没有传递Message参数,因为我可能在某处丢失了某些内容。侦听器似乎正在按预期方式工作(它会在有人在聊天中说出内容时触发)。

这是我收到的错误消息供参考:

  

忽略消息“回溯”中的异常(最近一次通话结束):

     

_run_event中的文件“ C:\ Program Files(x86)\ Python36-32 \ lib \ site-> packages \ discord \ client.py”,第221行      等待coro(* args,** kwargs)TypeError:Dealwithit()缺少1个必需的>位置参数:'message'

这是供参考的代码段

@bot.event
async def dealwithit(ctx,message):
    msg = message.content
    msg = msg.lower()
    msg = "".join(msg.split())
    if ctx.user.id != message.author.id:
        if msg == "dealwithit":
            dealwithit= discord.File('swag.jpg', filename='swag.jpg')
            await client.send_message(content=None,file=dealwithit)

bot.add_listener(dealwithit,'on_message')

对于我可能缺少的,没有传递参数或设置不正确的任何帮助,将不胜感激。

2 个答案:

答案 0 :(得分:0)

这里是使用不和谐命令的重写

    bot = commands.Bot(command_prefix='!')
    @bot.command(pass_context=True)
    async def dealwithit(ctx):
        sendfile = open("swag.jpg", "rb")
        await bot.send_file(ctx.author.channel, sendfile)
        sendfile.close()

答案 1 :(得分:0)

on_message仅具有message参数,因此请尝试不使用ctx。