机器人加入服务器时发送消息[Discord.py]

时间:2020-09-23 17:59:42

标签: python discord.py

我目前正在制造一个不和谐的机器人,并且想在加入服务器的#general通道中发送一条消息,这是我到目前为止的代码。

async def on_guild_join(guild):
    general = find(lambda x: x.name == 'general',  guild.text_channels)
    if general and general.permissions_for(guild.me).send_messages:
        embed=discord.Embed(title="**======== *Thanks For Adding Me!* ========**", description=f"""
        Thanks for adding me to {guild.name}!
        You can use the `--help` command to get started!
        """, color=0xd89522)
        await general.send(embed=embed)

当我运行此代码时,会发生注释。我没有得到任何错误或输出。

如果有人可以帮助,那就太好了。谢谢!

1 个答案:

答案 0 :(得分:0)

您的on_guild_join是否有event decorator?当我使用此装饰器测试您的代码时,效果很好。

此外,如果您的机器人加入的行会没有名为“ general”的频道,则可能需要回退。在guild.text_channels[0]中发送消息将在第一个通道中发送消息,或者在guild.system_channel中在系统通道中发送消息,可能更可靠。