我正在为服务器制作discord.js机器人。当我编写!ayuda时,机器人完全不会发送它,它会吐出一个错误
“ UnhandledPromiseRejection警告:DiscordAPIError:无法发送 给该用户的消息”
这是我的帮助命令代码
switch (args[0]) {
case 'ayuda':
const Embed = new RichEmbed()
.setColor(0x06d6fe)
.setFooter("© Capital Wolf", "https://i.imgur.com/0nn2u7q.gif" )
.setTimestamp()
.setImage("https://i.imgur.com/vU2PFJv.png")
.setTitle("⚠ Has solicitado los comandos del Discord de **Capital Wolf** ⚠")
.addField('!cache',
"Muestra como borrar la cache de **Fivem**")
.addField('!staff',
"Muestra una lista de los miembros que pertenecen al **STAFF** de **Capital Wolf**")
.addField('!invitacion',
"Muestra una invitacion del servidor de Discord de **Capital Wolf**")
.addField('!ip',
"Muestra la ip del servidor de **Fivem** de **Capital Wolf**")
message.member.send(Embed);
break;
}
答案 0 :(得分:1)
不允许成员从该服务器成员向他发送DM消息。您可以通过在message.member.send()中添加.catch()
块来处理它。
switch (args[0]) {
case 'ayuda':
const Embed = new RichEmbed()
.setColor(0x06d6fe)
.setFooter("© Capital Wolf", "https://i.imgur.com/0nn2u7q.gif" )
.setTimestamp()
.setImage("https://i.imgur.com/vU2PFJv.png")
.setTitle("⚠ Has solicitado los comandos del Discord de **Capital Wolf** ⚠")
.addField('!cache',
"Muestra como borrar la cache de **Fivem**")
.addField('!staff',
"Muestra una lista de los miembros que pertenecen al **STAFF** de **Capital Wolf**")
.addField('!invitacion',
"Muestra una invitacion del servidor de Discord de **Capital Wolf**")
.addField('!ip',
"Muestra la ip del servidor de **Fivem** de **Capital Wolf**")
message.member.send(Embed).catch(console.error)
break;
}
答案 1 :(得分:0)
您可能试图向该机器人发送邮件,或者该机器人被阻止,或者该服务器的DM已关闭或完全关闭。
您可以使用.catch()
函数
下面是一个示例。
//Your embed code could go here.
message.author.send(putYourEmbedDeclarationHere).catch(error => {
message.channel.send(`Something went wrong while I tried to send you a DM`)
})