未在 discord.py 中发送欢迎消息

时间:2021-05-30 10:03:42

标签: python python-3.x discord discord.py

所以我最近制作了一个新服务器并为它制作了一个自定义机器人,但是欢迎信息似乎并没有真正起作用......它也应该为加入的成员提供特定的角色,但我删除了它代码和当前代码仍然不起作用。

遗憾的是,命令提示符没有给出任何错误。我不知道现在该怎么办。

这是代码-

    @commands.Cog.listener()
    async def on_member_join(self, member):
        #GETTING THE GUILD, CHANNEL AND ROLE
        channel = self.client.get_channel(828481599057166356)
        name = member.name

        #CREATING THE WELCOME EMBED
        welcomeem = discord.Embed(title = f"Hey there {member.name}!", description = f"Welcome to {chanenl.guild.name}! Have a fun time here in TigerNinja's server!")
        welcomeem.add_field(name="1. Rules", value = f"{name}, before you start having fun here, make sure to check <#752474442650878002> and read all rules as they will come in handy in the server!", inline=False)
        welcomeem.add_field(name="2. Self-roles", value = f"{name}, be sure to check out <#776293478594379797> and get all roles you want!", inline=False)
        welcomeem.add_field(name="2. Help", value = f"{name}, need help with this bot then type `t.help`. If you need help relating to something else, contact the mods via dms, but don't ping them!!", inline=False)

        #SENDING THE PING, EMBDE AND ADDING ROLE
        await channel.send(f"Welcome, {member.mention}!")
        await channel.send(embed=welcomeem)

(顺便说一句,我正在使用齿轮)

2 个答案:

答案 0 :(得分:0)

您是否将此命令设置为机器人事件?在添加此类命令之前,您应该添加 @bot.event(或您在代码 + .event 中为 discord.Client 提供的任何名称,共享更多代码可能会很有用,但请注意不要包含您的令牌或任何私人信息)。

有关更多信息,请查看这篇文章,我相信这是您正在寻找的答案: Discord.py on_member_join not working, no error message

答案 1 :(得分:0)

遵循 dicord.py docs

channel = guild.get_channel(828481599057166356)

应该是:

channel = client.get_channel(828481599057166356)

编辑: 我发现了别的东西:

welcomeem = discord.Embed(title = f"Hey there {member.name}!", description = f"Welcome to {chanenl.guild.name}! Have a fun time here in TigerNinja's server!")

您在 {chanenl.guild.name} 中拼错了“频道”