我想为我的Discord服务器创建一个自定义命令,用户可以在其中使用其用户名和密码进行身份验证以获得特殊角色。该用户名和密码来自我自己的应用程序,我希望人们在对该网站进行正确的身份验证后获得“注册”角色。
我知道我需要一个用于服务器的机器人-这几乎是一件容易的事。但是,如何添加自定义命令,以便人们可以发送其凭据以允许这样做?我还可以使用临时哈希来避免记录凭据-但是,现在无论如何这只是理论上的事情。
我正在使用NPM的Discord.js软件包,其本身是官方API客户端。
答案 0 :(得分:1)
命令的基本结构是:当您收到一条消息时,请检查它是否为命令并相应地执行操作。您应该这样写:
client.on('message' , msg => {
// example: the command is "-test"
let args = msg.content.split(' '),
command = args.shift();
if (command == "-test") {
...
}
});
请注意,这是一个非常的基本示例,并且有更有效的方法来执行此操作(这取决于您要构建的内容以及您将如何执行此操作)。
要向成员添加角色,您可以使用GuildMember.addRole()
,这是一个示例:
let {member} = msg;
if (!member) return msg.reply("You're not in a guild.");
member.addRole('role id here')
.then(() => msg.reply("Role added."))
.catch(console.error);
注意:如果您打算添加很多不同的命令,您可能会喜欢discord.js-commando
库:它是一个使命令管理更轻松的框架。
这是每个部分的快速处理方法,如果您需要有关某个方面的更多信息,请告诉我。