📜  discord.js 开始代码 - Javascript (1)

📅  最后修改于: 2023-12-03 15:14:41.936000             🧑  作者: Mango

使用 Discord.js 构建聊天机器人

介绍

Discord.js 是一个用于构建 Discord 机器人的强大库,可与 Discord API 进行交互。

在本教程中,我们将学习如何安装 Discord.js,如何设置 Discord 应用程序,以及如何通过该库构建聊天机器人来响应用户消息和执行操作。

安装

首先,我们需要安装 Node.js。您可以从 https://nodejs.org/en/ 下载并安装 Node.js。

然后,我们可以使用 npm(Node.js 包管理器)安装 Discord.js。

npm install discord.js
设置 Discord 应用程序

要创建 Discord 机器人,您需要在 https://discord.com/developers/applications/ 上创建一个应用程序,然后将其转换为机器人。以下是设置步骤:

  1. 在 Discord 开发者门户上创建一个新应用程序。您需要输入应用程序名称和描述。

  2. 转到“Bot”页签并单击“Add Bot”。

  3. 单击“Copy”按钮下的令牌,以便稍后在代码中使用。

  4. 转到“OAuth2”页签,然后单击“Add Redirect”按钮。在弹出的窗口中,输入“http://localhost:3000/callback”。

  5. 将必要的权限添加到“Scopes”部分。建议添加最小限度的权限,并根据需要在程序中请求更多权限。如果需要,勾选“Bot”复选框。

  6. 下载代码片段下方的代码,将其中的 TOKEN 替换为您的机器人令牌,并填写其他可选信息。

代码
const Discord = require('discord.js');
const client = new Discord.Client();

const prefix = '!'; // 指定机器人名称

client.on('ready', () => {
    console.log(`Logged in as ${client.user.tag}!`);
});

client.on('message', (msg) => {
    if (!msg.content.startsWith(prefix) || msg.author.bot) return;

    const args = msg.content.slice(prefix.length).trim().split(/ +/);
    const command = args.shift().toLowerCase();

    if (command === 'ping') {
        msg.channel.send('Pong!');
    }
});

client.login('TOKEN');

在上面的代码中,我们首先引入 Discord.js 库,然后创建一个新客户端实例。

我们指定 prefix 变量来标识机器人名称。在成为可用状态后,我们使用 console.log 打印机器人的名称。

message 事件中,我们使用 startsWith 检查消息是否以 prefix 变量开头,并跳过来自机器人自身的消息。

然后,我们使用 slice 函数去掉消息中的前缀,并使用正则表达式拆分剩余部分成为参数数组 args。我们还将命令变为小写。

最后,我们检查命令是否为 ping,如果是,则通过 msg.channel.send 发送一个回复,指示机器人已接收到命令。

结论

通过本教程,您应该理解如何使用 Discord.js 构建聊天机器人,并能够回复用户的消息和执行自定义操作。当然,这只是一个开始,您可以在此基础上构建更复杂的机器人,以与 Discord API 进行交互。