[英]how to check if the member is joined to an specific voice channel DiscordJS
I want to check if the member is joined to the voice channel that the bot is joined.我想检查成员是否加入了机器人加入的语音频道。 The whole code is working, I just want to add that line that I put in code comments.
整个代码都在工作,我只想添加我在代码注释中添加的那一行。 My code:
我的代码:
const { QueryType } = require('discord-player');
const { MessageEmbed } = require('discord.js');
module.exports = {
name: 'play',
aliases: ['p'],
permissions: ['CONNECT'],
description: 'Plays a music',
voiceChannel: true,
async execute(message, args, cmd, client, Discord, profileData) {
// if the member that used the comamnd is not joined to the voicechannel that the bot is playing music on it, return;
const player = client.player
if (!args[0]) return message.channel.send({ content: `${message.author}, Write the name of the music you want to search. <:Cross:961558777667149874>` });
const res = await client.player.search(args.join(' '), {
requestedBy: message.member,
searchEngine: QueryType.AUTO
});
if (!res || !res.tracks.length) return message.channel.send({ content: `${message.author}, No results found! <:Cross:961558777667149874>` });
const queue = await client.player.createQueue(message.guild, {
metadata: message.channel
});
try {
if (!queue.connection) await queue.connect(message.member.voice.channel)
} catch {
await client.player.deleteQueue(message.guild.id);
return message.channel.send({ content: `<:Cross:961558777667149874> ${message.author}, I can't join audio channel ` });
}
if(client.config.opt.selfDeaf === false) {
let channel = message.member.voice.channel;
const { joinVoiceChannel } = require('@discordjs/voice');
const connection = joinVoiceChannel({
channelId: channel.id,
guildId: channel.guild.id,
adapterCreator: channel.guild.voiceAdapterCreator,
selfDeaf: false
});
}
res.playlist ? queue.addTracks(res.tracks) : queue.addTrack(res.tracks[0]);
if (!queue.playing) await queue.play();
},
};
I am not getting any errors.我没有收到任何错误。 I am using node.js v16 and discord.js v13
我正在使用 node.js v16 和 discord.js v13
You can use this code to return if the member isn't in the same voice channel as you.如果该成员与您不在同一语音频道,您可以使用此代码返回。
if(message.member.voice.channelId !== message.guild.me.voice.channelId) return;
Then it will return if they aren't in the same channel.如果他们不在同一个频道,它将返回。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.