所以,我正在编写一个不和谐的机器人。我试图让它响应一个关键字,例如说“Pong!”出于某种原因,这不起作用。我已经尝试了一个小时的解决方案,但我很累。如果有人可以提供帮助,那就太好了。当有人说 ping 作为关键字时,我想要的只是让机器人说 pong。 这是代码。
# if anyone says keywords
@client.event
async def on_message(message):
if "Ping" in message.content:
await ctx.send('Pong!')
谢谢
-杰克
答案 0 :(得分:1)
错误非常明显。
问题出在这个语句中:
await ctx.send('Pong!')
ctx
其实就是你使用discord库的Command API
时传递的context参数。但是当您使用简单的 Client
时,您真的可以使用它。
在这一行:
async def on_message(message):
参数是 message
,我们将使用它来发送我们的消息。
所以很简单。
把上面提到的错误语句改成:
await message.channel.send("Pong!")
这将解决您的问题!
谢谢! :D