discord.py:如何让邀请/添加机器人的用户进入他的服务器?[解决方案]



我想向用户发送一个DM,该用户邀请/添加了机器人到他的服务器
我注意到它显示在审核日志中。我可以获取并获得用户吗?或者有更简单的方法可以实现吗?

示例:
bot = commands.Bot()
@bot.event
async def on_guild(guild, inviter):
await inviter.send("Thanks for adding the bot to your server!")

使用discord.py 2.0,您可以获得服务器的BotIntegration以及邀请机器人的用户。

示例

from discord.ext import commands
bot = commands.Bot()
@bot.event
async def on_guild_join(guild):
# get all server integrations
integrations = await guild.integrations()
for integration in integrations:
if isinstance(integration, discord.BotIntegration):
if integration.application.user.name == bot.user.name:
bot_inviter = integration.user # returns a discord.User object

# send message to the inviter to say thank you
await bot_inviter.send("Thank you for inviting my bot!!")
break

注意:guild.integrations()需要Manage Server(manage_guild(权限。


参考文献:

  • Guild.integrations
  • discord.BotIntegration
Discord.py还不支持Bot集成。请检查此拉取请求。一旦它被合并,你就可以执行integration.user来获得邀请机器人的用户

在不一致.py 1.7.3及更低版本中没有任何实际方法。但是,您可以获取审核日志条目(文档(,并从中找出谁邀请了Bot。

相关内容

  • 没有找到相关文章

最新更新