【发布时间】:2021-05-17 08:26:22
【问题描述】:
我正在编写一个简单的 discord 机器人,我想制作它,以便机器人在加入服务器时发送问候消息
@client.event
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:
await general.send('Thanks for inviting me.'.format(guild.name))
但是,此代码仅发送通用消息,如果通用通道未命名为“general”,则不会发送。所以现在我希望它在系统消息通道中发送消息。我该怎么做?
【问题讨论】:
-
你有点不明白,让我解释一下。 Discord System Messages Channel 仅适用于社区服务器,discord 也允许服务器更改该频道的名称,因此即使您将其设置为我认为是默认名称的
moderator-only,如果出现以下情况,它也不会发送:缺少权限,或者频道名称不同。希望您能理解,如果有人对此提出了答案,那么也许我错了。 -
@GarrettSucksAtCode 我进入我的服务器并检查过,我可能是错的,但如果你进入服务器设置 > 概述 > 系统消息频道,你可以选择系统消息的频道。那么这是否意味着我可以通过它?
标签: python discord.py