【发布时间】:2021-05-11 09:14:18
【问题描述】:
有没有办法在新的服务器提升服务器时发送消息,例如服务器提升事件或类似的事情?
@commands.Cog.listener()
async def server_get_boosted(self, member):
print(str(member))
这样的
【问题讨论】:
标签: python discord bots discord.py
有没有办法在新的服务器提升服务器时发送消息,例如服务器提升事件或类似的事情?
@commands.Cog.listener()
async def server_get_boosted(self, member):
print(str(member))
这样的
【问题讨论】:
标签: python discord bots discord.py
没有直接的方法可以做到这一点。这不是discord.py 的限制,Discord API 根本不提供这样的事件。
但是,硝基助推器会自动分配一个不可撤销的“硝基助推器”角色,您可以查询该角色作为解决方法。
您可以通过在on_member_update 事件中检查用户是否具有新角色——“nitro booster one”——来做到这一点。
【讨论】:
没有专门在服务器提升时发送的事件。
但是,当发送服务器提升消息时,会触发 on_message 事件。该消息将具有MessageType 或premium_guild_subscription。
所以你可以这样:
@client.event
async def on_message(message):
if message.type == discord.MessageType.premium_guild_subscription:
print(str(message.author))
来源:
【讨论】: