因此,正如标题所示,我正在尝试使我的漫游器响应特定消息。因此,在用户发送图片后,它会称赞一下,然后,如果该用户使用诸如“感谢”之类的消息来响应该消息,则机器人将继续以另一条消息进行响应,但是我正在尝试使它使用if语句响应“感谢”的多个版本。到目前为止,这是代码:
if '.png' in message.content or '.jpg' in message.content or '.jpeg' in message.content:
await bot.send_message(message.channel, "woah, very nice!")
msg = await bot.wait_for_message(author=message.author)
if msg:
if msg.content == 'thanks':
print("test")
await bot.send_message(message.channel, "hey, gotta compliment nice images right?")
我不确定我是否正确执行此操作,python shell无法打印测试,并且机器人在服务器中没有响应。
答案 0 :(得分:0)
我们可以编写一个检查许多不同变化的函数,然后将该函数作为wait_for_message
参数传递给check
。
thanks = ['thanks', 'thank you', 'thx']
def thanks_check(message):
content = message.content.lower()
return any(t in content for t in thanks)
@bot.event
async def on_message(message):
content = message.content.lower()
if '.png' in content or '.jpg' in content or '.jpeg' in content:
await bot.send_message(message.channel, "woah, very nice!")
print("Waiting for test")
msg = await bot.wait_for_message(author=message.author, check=thanks_check)
if msg:
print("test")
await bot.send_message(message.channel, "hey, gotta compliment nice images right?")