使用interactions.py设置Discord机器人Rich Presence失败求助
问题排查与修复方案
1. 修复语法错误
你的代码里ctx.send语句缺少闭合括号,这会导致代码运行报错,先补上:
await ctx.send("**This is a response to testing command**")
2. 修正Rich Presence设置逻辑
在interactions.py中,设置Rich Presence的正确方式可以简化,无需嵌套ClientPresence,直接在change_presence中传入对应参数即可。部分版本的库中,PresenceActivity需替换为Activity,调整后的on_start事件代码如下:
@bot.event async def on_start(): # 单活动设置方式 await bot.change_presence( activity=interactions.Activity( name="Testing", type=interactions.ActivityType.WATCHING ) ) # 多活动设置方式(若需要同时显示多个状态) # await bot.change_presence( # activities=[ # interactions.Activity( # name="Testing", # type=interactions.ActivityType.WATCHING # ) # ] # )
3. 检查interactions.py版本
旧版本库可能存在API兼容问题,执行以下命令更新到最新版:
pip install -U interactions.py
4. 状态同步验证
- 确认机器人在Discord开发者门户中无状态更新权限限制
- 重启机器人后等待1-2分钟再查看状态(Discord存在状态同步延迟)
内容的提问来源于stack exchange,提问作者TastyCZ
相关产品推荐
相关产品推荐

