ada*_*pap 10 javascript node.js discord.js
我正在使用discord.js库和node.js来创建一个促进扑克的Discord机器人.它是有用的,除了向每个人展示双手,我需要循环玩家并用他们的手向他们发送DM.
bot.on("message", message => {
message.channel.sendMessage("string");
});
Run Code Online (Sandbox Code Playgroud)
这是在任何用户发送消息时向消息发送消息的代码.我需要机器人在私人频道回复; 我见过dmChannel
,但我不明白如何使用它.我有要向其发送消息的成员的用户名.一个例子将不胜感激.
编辑:在查找用户对象后,我发现我可以使用.users
客户端(bot)的属性获取所有用户.我会user.sendMessage("string")
尽快尝试使用这种方法.
小智 21
为了让机器人发送消息,您需要<client>.send()
,client
机器人将向其发送消息的位置(A通道,服务器中的任何位置或PM).由于您希望机器人PM成为特定用户,因此您可以将其message.author
用作您的client
.(您可以author
在消息或其他内容中替换所提及的用户等)
因此,答案是: message.author.send("Your message here.")
我建议您在遇到卡片时查找有关某个对象属性的Discord.js文档,您可能会发现可以作为您的解决方案的特定功能.
tom*_*une 11
要向用户发送消息,您首先需要获取一个User
实例。
message.author
用户发送的消息的属性。client.users.fetch
使用用户的 id进行调用获得用户实例后,您可以使用.send发送消息
client.on('message', (msg) => {
if (!msg.author.bot) msg.author.send('ok ' + msg.author.id);
});
Run Code Online (Sandbox Code Playgroud)
client.users.fetch('487904509670337509', false).then((user) => {
user.send('hello world');
});
Run Code Online (Sandbox Code Playgroud)
小智 5
上面的答案也很好用,但我发现你通常可以使用message.author.send("blah blah")
代替message.author.sendMessage("blah blah")
.
-EDIT-:这是因为自 Discord Js 中的 v12 起,sendMessage 命令已过时
.send 通常比 .sendMessage 更适合我,后者有时会遇到问题。希望有一点帮助!
归档时间: |
|
查看次数: |
67108 次 |
最近记录: |