javascript - Discord.js 如何检查用户是否不接受直接消息

标签 javascript discord discord.js

我想知道 Discord 机器人是否有可能检查该机器人尝试发送 DM 的特定用户是否接受直接消息。现在这是我的代码:

exports.run = (client, message) => {
    try {
        message.author.send(`:ok_hand:`);
    } catch (err) {
        message.reply('Cannot send Direct Messages to your user!');
    }
}

但我希望代码能够在尝试向用户发送消息之前判断用户是否正在接受直接消息。这可行吗?

最佳答案

这是不可能的。确定您是否可以发送 DM 的唯一方法是尝试发送消息。
您可以使用 promises 中的 catch 来捕获错误并执行某些操作,而不是使用 try catch。

message.author.send('👌')
   .catch(() => message.reply("Can't send DM to your user!"));

关于javascript - Discord.js 如何检查用户是否不接受直接消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49621884/

相关文章:

javascript - 语法错误 : Unexpected Token, discord bot 编码

javascript - 阻止对象共享值

javascript - 谷歌脚本循环单元格

javascript - 在使用 iOS Phonegap 包装的 jQuery Mobile 中找不到具有相对 src 的图像

javascript - 在 ajax 请求上保持滚动位置

python - 使用 on_application_command_error() 与 @command.error 进行回溯处理

discord - 使用 Discord py 删除来自特定用户的消息

javascript - `dd-M-yyyy` 格式的日期解析字符串

python - 如何在 discord.py 中使用 cogs?

javascript - Discord.js 如何运行函数然后打印答案