将提及的用户转移到特定的语音通道

时间:2020-11-11 23:15:08

标签: discord.js

我正在尝试使用频道ID将带标签的用户移至语音频道。我看到有人使用.setUserChannel,但它告诉我这不是一个函数。有人可以告诉我我需要解决的问题:)

    if(command === 'ping'){
    message.channel.send('pong');
} else if (command === 'abuse'){
            //const AbuseTown = client.channel.cache.get(760535995329282161);
            const taggedUser = message.mentions.users.first();
            message.channel.send(`You want to abuse: ${taggedUser.username}`);
            taggedUser.setVoiceChannel('776202269569712168');
            return;
        }

1 个答案:

答案 0 :(得分:0)

首先,您需要GuildMember对象,而不是User对象。进一步了解差异here

// change:
const taggedUser = message.mentions.users.first();

// to:
const taggedUser = message.mentions.members.first();

第二,GuildMember.setVoiceChannel()是一个过时的函数,因此如果您使用的是v12.x,它将无法正常工作。而是使用VoiceState.setChannel()

const taggedUser = message.mentions.members.first();
message.channel.send(`You want to abuse: ${taggedUser.username}`);
taggedUser.voice.setChannel('776202269569712168');