首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bot.on('messageCreate') discord.js是如何工作的?机器人不会检测到发送的消息,而是试图制造不和谐的聊天机器人。

bot.on('messageCreate') discord.js是如何工作的?机器人不会检测到发送的消息,而是试图制造不和谐的聊天机器人。
EN

Stack Overflow用户
提问于 2022-02-02 00:53:00
回答 1查看 52关注 0票数 0

标准和要求

代码语言:javascript
复制
require('dotenv').config();
const OpenAI = require('openai-api');

// Load your key from an environment variable or secret management service
// (do not include your key directly in your code)
const OPENAI_API_KEY = process.env.OPENAI_API_KEY;
const openai = new OpenAI(OPENAI_API_KEY);  

const Discord = require('discord.js');
const TOKEN = process.env.TOKEN;

const { Client, Intents } = require('discord.js');
const bot = new Discord.Client({ intents: [Intents.FLAGS.GUILDS] });

const prefix = 'w!';

*on ready*
bot.on('ready', async() => {
    console.log(`${bot.user.tag} is online!`);
    bot.user.setActivity('with the code', {type: 'PLAYING'});
});

这就是问题所在,它无法检测到发送的消息--我尝试过几种不同的方法--但是没有,与我在空白服务器上测试的服务器权限没有任何关系,节点是最新的

代码语言:javascript
复制
bot.on('messageCreate', message => {

    if (message.content === 'ping') {
        message.channel.send('pong');
    }
});
EN

回答 1

Stack Overflow用户

发布于 2022-02-02 01:15:41

要触发messageCreate事件,必须启用DIRECT_MESSAGES客户端意图。

代码语言:javascript
复制
const bot = new Discord.Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.DIRECT_MESSAGES] });

阅读更多关于意图这里的内容

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70949426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档