检查 Discord bot 在服务器中是不是具有斜杠命令权限?

Posted

技术标签:

【中文标题】检查 Discord bot 在服务器中是不是具有斜杠命令权限?【英文标题】:Check if Discord bot has slash command permissions in server?检查 Discord bot 在服务器中是否具有斜杠命令权限? 【发布时间】:2022-01-10 06:04:30 【问题描述】:

我在数千个 Discord 服务器中运行一个机器人 - 直到现在,它的邀请链接还没有包含 application.commands 范围,只有 bot

我了解,如果我想过渡到 Slash 命令,机器人的用户将需要使用新权限重新邀请它。

我计划尽可能长时间地保留使用机器人命令的传统方法,但是是否可以在服务器用户与之交互时确定我的机器人是否具有application.commands 权限?

我想要这样做的主要原因是,我可以在服务器上留言,鼓励他们重新邀请机器人,以便可以使用斜杠命令。

我正在使用discord.pydiscord-py-slash-command

【问题讨论】:

【参考方案1】:

您可以使用下面的代码向服务器所有者发送消息


owner = guild.owner
await owner.send("hi there!")

运行代码,它应该 DM 所有者。

或者,您可以在命令中提及切换和使用 slash cmd,就像 arcane bot 所做的那样

【讨论】:

这不能回答我的问题 - 我正在寻找一种方法来真正检测我的机器人是否能够使用斜杠命令。如果它已经能够使用斜杠命令,则无需向服务器所有者发送消息或在回复所有服务器时提及它。 如果applications.commands 没有重新邀请@scob_ 就无法集成斜线命令,您的机器人将能够使用斜线命令 您甚至完全不承认 OP 的问题或他的评论@NxrmqL

以上是关于检查 Discord bot 在服务器中是不是具有斜杠命令权限?的主要内容,如果未能解决你的问题,请参考以下文章

Java Discord Bot (JDA) 检查是不是固定

Discord JS bot 如何从 API 获取递归异步函数

Python Discord Bot - 在不同的服务器中获取用户角色

检查项目是不是在列表中 discord python

在 JavaScript Discord Bot 中,为啥 message.react() 是“不是函数”

Discord Bot 多次运行