我想要一个简单的命令,例如“!hello”,以输出“ Hello @everyone”并对所有人进行ping操作。输出文本是正确的,但实际上并不能ping通。该命令仅显示文本@everyone,而无需提及。
const Discord = require("discord.js")
module.exports.run = async (bot, message, args) => {
message.channel.send("@everyone Hello!");
}
module.exports.help = {
name: "hello"
}
我希望它输出以下内容:
实际结果:
答案 0 :(得分:2)
您用文字字符串@everyone或@here提及所有人或此处,而不是常规角色提及。 这不是错误,而是不和谐的事情。
答案 1 :(得分:1)
我不确定为什么,但是我记得必须在send
调用中将角色放入自己的字符串文字中:
message.channel.send("@everyone" + " Hello!");
无法为自己的atm测试,看看是否可行。
答案 2 :(得分:1)
尝试
message.channel.send("<@everyone>" + "Hello!");
答案 3 :(得分:1)
您可以这样说:
export default places => places
.map(place => ({
value: place.properties.code, label: place.properties.name
}))
.sort((placeA, placeB) => placeA.label.toLowerCase().localeCompare(placeB.label.toLowerCase()));
您可以检查您的机器人是否可以这样提及所有人:
[ { value: 'CA076757', label: 'Brockway' },
{ value: 'S4889785', label: 'North Haverbrook' },
{ value: 'MN486464', label: 'Ogdenville' } ]
答案 4 :(得分:1)
您可以从 everyone
获取 guild.roles
角色。
const everyone = await guild.roles.fetch("@everyone");
channel.send(`Hello ${everyone}`);
答案 5 :(得分:0)
所以,事实证明我有:
const bot = new Discord.Client({disableEveryone: True});
一旦我将其更改为:
const bot = new Discord.Client({disableEveryone: False});
一切正常。
谢谢大家的帮助。