我如何 DM 将直接消息放入 public 频道而不发送垃圾邮件的机器人
how do i DM the bot which puts direct messages into a public channel without spamming messages
所以我在这里使用的是一个 discord 机器人,它应该放下与公会/discord 服务器中 public 频道中的相同的消息(我通过 DM 将其发送到)。但我的问题是,出于某种原因,它每秒发送 6 条垃圾邮件。
下面我几乎描述了我所做的一切。我敢打赌我就像婴儿一样远离正确编写代码,但我正在努力解决它应该花费的时间。
我一直在寻找很多解决方案并尝试了我遇到的许多变体,但它让我越来越困惑 client.on('ready') 或 bot.on ()
当我使用 client.on() 时,我一直收到 ReferenceError: msg is not defined 错误。
我找不到问题出在哪里。
当我使用 bot.on() 时,它说“'ReferenceError: bot is not defined'”。我在谷歌上搜索了一下,有人说你写了“'client.on()'”等等
所以我很沮丧,决定请教这里的某个人,他可以帮我写下我似乎无法修复自己 idk 的代码。我只是浪费了太多时间。我将非常感谢您的帮助!提前致谢!
所以无论如何这是我的代码:
const Discord = require('discord.js');
const client = new Discord.Client();
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
});
client.on('message', msg => {
console.log('Message received: ' + msg.content);
const channel = client.channels.cache.get('CHANNEL ID');
if (msg.content) {
channel.send(msg.content);
}
});
client.login('BOT TOKEN');
您的机器人只是在自我回应。它回复你的消息,然后回复你的消息的回复,然后回复你的消息的回复,等等。你可以通过检查消息作者是否是机器人来防止这种情况 User.bot
.
您还应该检查消息是否是在 dm 中发送的,这样它就不会在每条随机消息上触发。
client.on('message', (msg) => {
if (msg.author.bot || msg.channel.type !== 'dm') return;
console.log('Message received: ' + msg.content);
const channel = client.channels.cache.get('CHANNEL ID');
if (msg.content) {
channel.send(msg.content);
}
});
所以我在这里使用的是一个 discord 机器人,它应该放下与公会/discord 服务器中 public 频道中的相同的消息(我通过 DM 将其发送到)。但我的问题是,出于某种原因,它每秒发送 6 条垃圾邮件。
下面我几乎描述了我所做的一切。我敢打赌我就像婴儿一样远离正确编写代码,但我正在努力解决它应该花费的时间。
我一直在寻找很多解决方案并尝试了我遇到的许多变体,但它让我越来越困惑 client.on('ready') 或 bot.on ()
当我使用 client.on() 时,我一直收到 ReferenceError: msg is not defined 错误。 我找不到问题出在哪里。 当我使用 bot.on() 时,它说“'ReferenceError: bot is not defined'”。我在谷歌上搜索了一下,有人说你写了“'client.on()'”等等
所以我很沮丧,决定请教这里的某个人,他可以帮我写下我似乎无法修复自己 idk 的代码。我只是浪费了太多时间。我将非常感谢您的帮助!提前致谢!
所以无论如何这是我的代码:
const Discord = require('discord.js');
const client = new Discord.Client();
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
});
client.on('message', msg => {
console.log('Message received: ' + msg.content);
const channel = client.channels.cache.get('CHANNEL ID');
if (msg.content) {
channel.send(msg.content);
}
});
client.login('BOT TOKEN');
您的机器人只是在自我回应。它回复你的消息,然后回复你的消息的回复,然后回复你的消息的回复,等等。你可以通过检查消息作者是否是机器人来防止这种情况 User.bot
.
您还应该检查消息是否是在 dm 中发送的,这样它就不会在每条随机消息上触发。
client.on('message', (msg) => {
if (msg.author.bot || msg.channel.type !== 'dm') return;
console.log('Message received: ' + msg.content);
const channel = client.channels.cache.get('CHANNEL ID');
if (msg.content) {
channel.send(msg.content);
}
});