discord.js에서 기능을 구현중인게 있는데, 반응 인식만 문제를 일으켜서 해당 기능만 빼서 테스트중인데, 코드를 실행시키고 나서 10분정도의 시간이 지나야 실행이 됩니다. 어떤 코드상 문제인지, 아니면 설정의 영향이 있는건지 잘 모르겠어서 질문 드립니다.
const { Client, GatewayIntentBits } = require('discord.js');
const client = new Client({
intents: [
GatewayIntentBits.Guilds,
GatewayIntentBits.GuildMessages,
GatewayIntentBits.GuildMessageReactions
]
});
client.on('messageReactionAdd', async (reaction, user) => {
// 로그를 남길 채널 ID
console.log('asdf');
const config = require('../emojicut/config.json'); // config.json 파일을 불러옵니다.
const logChannel = await client.channels.fetch(config.channelID);
if (reaction.partial) {
// 반응이 부분적으로만 로드된 경우, 전체 정보를 가져옵니다.
try {
await reaction.fetch();
} catch (error) {
console.error('이모지를 가져오는 데 실패했습니다:', error);
return;
}
}
const message = reaction.message;
const emoji = reaction.emoji;
// 로그 메시지를 구성합니다.
const logMessage = `${user.tag} 사용자가 '${message.content}' 메시지에 '${emoji.name}' 이모지를 추가했습니다.`;
// 특정 채널에 로그를 남깁니다.
logChannel.send(logMessage);
});
require('dotenv').config(); // .env 파일에서 환경 변수를 로드합니다.
client.login(process.env.DISCORD_TOKEN);
시간이 지나면 작동을해서 channelID, DISCORD_TOKEN의 오류는 아닙니다. 권한도 전부 설정해뒀습니다.
불러오는 중...