You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord机器人on_member_join事件无响应,欢迎消息无法触发

解决discord.py on_member_join事件无响应的问题

以下是几个关键排查和修复点:

  • 检查代码顺序
    确保@bot.event装饰的on_member_join函数是在bot = commands.Bot(...)实例化之后定义的。如果先写事件再创建bot对象,装饰器无法绑定到正确的bot实例,事件自然不会触发。正确的代码结构应该是:

    import discord
    from discord.ext import commands
    
    # 先初始化intents和bot
    intents = discord.Intents().all()
    bot = commands.Bot(command_prefix='!', intents=intents)
    
    # 再定义事件
    @bot.event
    async def on_member_join(member): 
        print("new member joined")
    
    # 最后启动bot
    bot.run("your_bot_token")
    
  • 确认开发者门户的intents设置已保存
    进入Discord开发者门户对应应用的Bot页面,找到「Privileged Gateway Intents」板块,确保Presence Intent、Server Members Intent、Message Content Intent全部开启,并且点击页面底部的「Save Changes」按钮,避免设置未生效。

  • 验证测试场景

    • 必须使用从未加入过服务器的新用户进行测试,重复退出再加入已有账号可能不会触发事件(受服务器缓存机制影响)。
    • 如果服务器开启了验证等级,需要用户完成验证流程后,事件才会触发。

内容的提问来源于stack exchange,提问作者superhackedmonkey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 06:31:10