【问题标题】:Direct message in discord.jsdiscord.js 中的直接消息
【发布时间】:2022-01-07 15:23:35
【问题描述】:

我正在学习制作一个角色机器人。目前该机器人可以工作,但我希望在向用户授予角色时,它会发送一个欢迎 md,但我遇到了问题。我试过用

client.on("ready", () => {
   client.users.fetch(targetUsers.id).then(user => {
            user.send('hola mundo')}
)});

但它不起作用

这个想法是在执行 member.roles.add(role) 之后,会向同一个欢迎用户发送一条消息

module.exports = {
    commands: 'giverole',
    expectedArgs: "<Target user's @> <The role name>",
    minArgs: 2,
    permissions: 'ADMINISTRATOR',
    callback: (message, arguments) => {

        const targetUsers = message.mentions.users.first()

        if (!targetUsers) {
            message.reply('Please specify someone to give a role to.')
            return
        }

        arguments.shift()
        const roleName = arguments.join(' ')
        const { guild } = message

        const role = guild.roles.cache.find((role) => {

            return role.name === roleName

        })
        if (!role) {
            message.reply(`No existe un rol con el nombre"${roleName}"`)
            return
        }

        const member = guild.members.cache.get(targetUsers.id)
        member.roles.add(role)
        message.reply(`Ese usuario ahora tiene el rol de ${roleName}`)
        console.log(`${targetUsers.id}`)


    }
}

【问题讨论】:

  • “MD”是什么意思? Markdown?
  • 不是每个人都能理解一些缩写。
  • 感谢反馈,这次尽量具体一点

标签: javascript discord discord.js


【解决方案1】:

Discord.js 让这变得非常简单:

const member = guild.members.cache.get(targetUsers.id)
member.roles.add(role)
member.send("Message here")

尽管警告一些用户可能在不和谐上禁用了来自非朋友的直接消息!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-19
    • 2021-01-25
    • 1970-01-01
    • 2018-05-27
    • 2018-04-12
    • 2020-08-24
    • 2020-07-02
    • 1970-01-01
    相关资源
    最近更新 更多