[英]Music Bot discord.js issue
我一直試圖讓這個代碼讓音樂機器人工作,我有所有的依賴項,但我認為這是因為我觀看的視頻來自大約 8 個月前,並且很多代碼已經失效。
目前我收到一個錯誤 TypeError: Cannot read property 'join' of undefined。 如果有人可以幫助我解決問題並使其正常工作,那就太棒了。
bot.on('message', message => {
if (!message.content.startsWith(PREFIX)) return;
let args = message.content.slice(PREFIX.length).split(" ");
switch(args[0]){
case 'play':
function play(connection, message){
var server = servers[message.guild.id];
server.dispatcher = connection.play(ytdl(server.queue[0], {filter: "audioonly"}));
server.queue.shift();
server.dispatcher.on("end", function(){
if(server.queue[0]){
play(connection, message);
}else {
connection.disconnect();
}
})
}
if(!args[1]){
message.channel.send("you need to provide a link!");
return;
}
if(!message.member.voice.channel.join){
message.channel.send("You must be in a voice channel to play music!");
return;
}
if(!servers[message.guild.id]) servers[message.guild.id] = {
queue: []
}
var server = servers[message.guild.id];
server.queue.push(args[1]);
if(!message.guild.voiceConnection)message.member.voiceChannel.join().then(function(connection){
play(connection, message);
})
break;
}
})
從 Discord v12 起, message.member.voiceChannel.join()
可能需要更改為message.member.voice.channel.join()
看起來問題來自這里:
if(!message.member.voice.channel.join){ message.channel.send("You must be in a voice channel to play music!"); return; }
您需要刪除 .join 部分,因為 Discord.js 中不存在這樣的東西
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.