Discord.py 如果另一个用户发送消息,如何使discord bot发送消息?不和谐
嗨,我需要帮助,使机器人可以发送消息,如果一个特定的用户发送一个 前。 阿里卡卡特:大家好Discord.py 如果另一个用户发送消息,如何使discord bot发送消息?不和谐,discord.py,Discord.py,嗨,我需要帮助,使机器人可以发送消息,如果一个特定的用户发送一个 前。 阿里卡卡特:大家好 机器人:YoWassup 这是我设法编写但不起作用的代码: @client.event async def on_message(message): me = '<user id>' if message.author.id == me: await message.channel.send("yo wassup") else:
机器人:YoWassup 这是我设法编写但不起作用的代码:
@client.event
async def on_message(message):
me = '<user id>'
if message.author.id == me:
await message.channel.send("yo wassup")
else:
return
@client.event
异步def on_消息(消息):
我=“”
如果message.author.id==me:
等待message.channel.send(“yowassup”)
其他:
返回
它不工作,因为ID是整数,也是消息。如果您没有意图,author
可以是None
。成员已启用
@client.event
异步def on_消息(消息):
me=6817239878981
如果message.author.id==me:
等待message.channel.send('yowassup')
什么是意图
?
Discord要求用户声明其bot运行所需的信息类型(即事件)。这是通过意图的形式实现的。
您可以阅读更多关于意向的信息
什么是特权意图?
随着API变更要求机器人作者指定意图,一些意图受到进一步限制,需要更多的手动步骤。这些意图称为特权意图。
如何启用意图?
intents=discord.intents.default()
bot=commands.bot(…,intents=intents)
#或者如果您使用的是'discord.Client'`
客户端=不一致。客户端(意图=意图)
如何启用特权意图
intents=discord.intents.all()
#如果您只想要成员或存在
intents=discord.intents.default()
intents.members=True
还要确保在中启用特权成员意图 它不起作用,因为ID是整数,也是消息。如果您没有意图,则author
可以是None
。成员
已启用
@client.event
异步def on_消息(消息):
me=6817239878981
如果message.author.id==me:
等待message.channel.send('yowassup')
什么是意图
?
Discord要求用户声明其bot运行所需的信息类型(即事件)。这是通过意图的形式实现的。
您可以阅读更多关于意向的信息
什么是特权意图?
随着API变更要求机器人作者指定意图,一些意图受到进一步限制,需要更多的手动步骤。这些意图称为特权意图。
如何启用意图?
intents=discord.intents.default()
bot=commands.bot(…,intents=intents)
#或者如果您使用的是'discord.Client'`
客户端=不一致。客户端(意图=意图)
如何启用特权意图
intents=discord.intents.all()
#如果您只想要成员或存在
intents=discord.intents.default()
intents.members=True
还要确保在中启用特权成员意图 等等,我把变量me改成字符串,我不明白你说的第二部分。不,你把me
变量改成整数。我将编辑我的答案,解释什么是意图以及您应该如何启用它们。每个用户都有自己的ID。您可以通过在开发人员模式下进行Discord并右键单击用户来找到这一点。将有一个按钮显示复制ID。开发人员模式位于“不协调设置”中“外观”选项卡的底部。例如,我的ID是348311499946721282。好的,我已经将me变量更改为int。我还启用了intent。现在,我的代码是:@client.event async def on_message(message):me=767208094525947924 if message.author.id==me:wait message.channel.send(“yo wassup”)else:return
很抱歉,它看起来有问题,我将用codewait回答我的问题,因此我将变量me更改为字符串,而我不理解您所说的第二部分。不,您将me
变量更改为整数。我将编辑我的答案,解释什么是意图以及您应该如何启用它们。每个用户都有自己的ID。您可以通过在开发人员模式下进行Discord并右键单击用户来找到这一点。将有一个按钮显示复制ID。开发人员模式位于“不协调设置”中“外观”选项卡的底部。例如,我的ID是348311499946721282。好的,我已经将me变量更改为int。我还启用了intent。现在我的代码是:@client.event async def on_message(message):me=767208094525947924 if message.author.id==me:wait message.channel.send(“yo wassup”)else:return
很抱歉看起来有问题,我会用代码回答我的问题