我有一个Discord机器人程序,从去年开始就没有修改过。虽然我已经修正了新的缩进要求,但每当我在Discord服务器上以完全权限向机器人发送消息时,message.content没有我可以使用的数据或字符串。这意味着我的程序无法接收特定的命令或消息。
下面是我的代码:每当我向discord服务器发送消息时,它应该打印消息、作者、提及和消息的内容,但它没有这样做,只是奇怪地打印了作者。
当我重置我的令牌时,因为我放错了位置,这种情况开始发生。否则,它在几个月前就可以工作了。
import discord
intents = discord.Intents.default()
client = discord.Client(intents=intents)
@client.event
async def on_ready():
print('We have logged in as {0.user}'.format(client))
@client.event
async def on_message(message):
if message.author == client.user:
return
if message.content.startswith('$hello'):
await message.channel.send('Hello!')
print(message.author.mention + ' ' + message.content)
client.run('TOKEN HERE')
1条答案
按热度按时间db2dz4w81#
在新的Discord API更新中,Intent做了一些更改。要获取消息的消息内容,您需要
message_content
Intent。这是一个特权Intent。要启用它,请在Discord开发者门户上启用它,之后,您需要在代码中启用它。以下是您的操作方法:我希望这对你有帮助。如果有更多的问题,请随时发表评论。