client.on("message", () => {
var message = new Discord.MessageEmbed()
.setDescription("Pong") // sets the body of it
.setColor("somecolor")
.setThumbnail("./image");
.setAuthor("Random Person")
.setTitle("This is an embed")
msg.channel.send(message) // without mention
msg.reply(message) // with mention
})
还可以选择dm用户,这可以通过以下方式实现:
client.on("message", (msg) => {
msg.author.send("This is a dm")
})
9条答案
按热度按时间fquxozlt1#
发送代码再次更改。问题和答案中的项目都过时了。对于版本12,下面将是正确的代码。有关此代码的详细信息可在此链接中找到。
向特定通道发送消息
向DM中的特定用户发送消息
如果你想DM一个用户,请注意机器人和用户至少应该有一个公共服务器。
希望这个答案能帮助那些在第12版之后来到这里的人。
7kqas0il2#
您在
.send()
行中遇到错误。您所拥有的当前代码是在discord.js库的早期版本中使用的,并且实现此功能的方法已更改。如果你有一个消息对象,比如在一个
message
事件处理程序中,你可以像这样向消息对象的通道发送一条消息:下面是一个
message
事件处理程序的例子:您也可以向特定的 channel 发送消息,您可以首先使用其ID获取通道,然后向其发送消息:
Promise
回调)*uinbv5nw3#
最重要的答案已经过时了
新方法是:
在获取通道ID时添加一点上下文;所有通道的列表存储在
client.channels
属性中。一个简单的
console.log(client.channels)
将显示该服务器上所有通道的数组。eoxn13cs4#
有四种方法可以实现你想要实现的目标,你可以使用
message.reply("Pong")
来提到用户,或者使用message.channel.send("Pong")
来不提到用户,另外在discord.js
中,你可以选择发送嵌入,你可以通过:还可以选择dm用户,这可以通过以下方式实现:
参见官方文档。
kuhbmx9i5#
下面是dm用户的代码:
(In在这种情况下,我们的消息不是响应,而是直接发送给所选用户的新消息)。
更多文档:
https://github.com/AnIdiotsGuide/discordjs-bot-guide/blob/master/frequently-asked-questions.md#users-and-members
mi7gmzs66#
您只能向频道发送消息
如果您想DM用户,那么您可以使用User.send()函数
vxf3dgd47#
发送消息的方式类型:不管是谁,都要执行命令:
在使用命令的通道中发送消息:
在特定通道中发送消息:
58wvjzkj8#
Discord.js v14.13.0代码:
9q78igpj9#
它是
message.channel.send("content");
,因为您正在向当前通道发送消息。