Discord 不和谐机器人不';联机时无法工作,bot正在运行

Discord 不和谐机器人不';联机时无法工作,bot正在运行,discord,discord.py,Discord,Discord.py,我开始用Python编写一个discord机器人。但现在我要面对一件大事: 机器人不会发送消息 导入不一致 从discord.ext导入命令 client=commands.Bot(命令前缀='!') 常规频道=客户端。获取频道(798136768120881165) join_channel=client.get_channel(798194832442130444) @客户端事件 成员连接上的异步定义(ctx,成员): 等待ctx。加入频道。发送(f“欢迎使用我的服务器!”) @客户端事件

我开始用Python编写一个discord机器人。但现在我要面对一件大事: 机器人不会发送消息

导入不一致
从discord.ext导入命令
client=commands.Bot(命令前缀='!')
常规频道=客户端。获取频道(798136768120881165)
join_channel=client.get_channel(798194832442130444)
@客户端事件
成员连接上的异步定义(ctx,成员):
等待ctx。加入频道。发送(f“欢迎使用我的服务器!”)
@客户端事件
_消息上的异步定义(上下文):
如果message.content==“这是什么?”:
WhatEmbed=discord.Embed(title=“这是一个测试机器人”,description=“这是我制作的第一个机器人!”,color=0x00ff00)
wait context.message.channel.send(嵌入=WhatEmbed)
@命令(别名=['help'])
异步def帮助(消息):
helpEmbed=discord.Embed(title=“Help”,description=None,color=discord.color.gray())
等待message.channel.send(helpEmbed=helpEmbed)

bot正在运行,并且处于联机状态

您的代码有点乱

  • 消息上的
    不接受
    上下文管理器,它接受
    消息
  • help
    命令没有将
    message
    作为参数,而是将
    Context
  • on\u member\u join
    只接受一个参数,
    member
您还应该在
on\u消息
事件末尾添加
client.process\u命令
,并启用一些意图

导入不一致
从discord.ext导入命令
intents=discord.intents.default()
intents.members=True
client=commands.Bot(命令前缀='!',意图=意图)
@客户端事件
_ready()上的异步定义:
等待客户端。等待,直到准备就绪()
打印(f“机器人在线”)
@客户端事件
成员加入时的异步定义(成员):
join_channel=client.get_channel(798194832442130444)
等待加入频道。发送(f“欢迎使用我的服务器!”)\`
@客户端事件
异步def on_消息(消息):
如果message.content==“这是什么?”:
WhatEmbed=discord.Embed(title=“这是一个测试机器人”,description=“这是我制作的第一个机器人!”,color=0x00ff00)
等待message.channel.send(嵌入=WhatEmbed)
等待客户端处理命令(消息)
@命令(别名=['help'])
异步def帮助(ctx):
helpEmbed=discord.Embed(title=“Help”,description=None,color=discord.color.gray())
等待ctx.send(helpEmbed=helpEmbed)
我启用了
intents.members
因为您有
on\u member\u join
事件,请记住在

参考:

您忘记了fomule:等待客户。处理命令(消息)感谢您的回答!这就是解决方案不用担心,如果答案有用,记得接受答案如果我想用``general\u channel=client.get\u channel(channelid)在特定通道中发送消息,我会调用client,但我从未用discord定义client。client,我还需要定义它吗?您定义了client,但是它是
命令的一个实例。Bot
-它具有
discord.Client
+的所有功能。如果您查看文档,它是一个完整的命令系统,
命令。Bot
还有一个方法,我想添加一个命令“!online”,说明Bot是否在线/更新