【发布时间】:2020-04-14 02:11:47
【问题描述】:
我目前正在开发一个带有一些音乐命令的不和谐机器人。它通过使用“播放”命令来工作。如果您运行它,它将在 youtube 上搜索您给定的参数(使用 ytdl-core 和 simple-youtube-api)。它为您提供 5 个视频结果,您必须选择一个数字(从 1 到 5)
但是当它加入语音频道播放音乐时,它会随机离开并在聊天中发送“未定义”,没有任何更多信息或错误。我目前正在使用 VPS 来托管这个机器人,如果我在我的计算机上托管“一些”音乐播放,但仍然有很多不起作用,但在 VPS 上没有任何音乐起作用。除了未定义之外,我没有收到任何错误”,但我不知道它来自这里,因为没有给定的行。我尝试再次重新安装 using 包,但都没有成功。
这是我的代码:
function play(guild, song) {
const serverQueue = queue.get(guild.id);
if (!song) {
serverQueue.voiceChannel.leave();
queue.delete(guild.id);
return;
}
const dispatcher = serverQueue.connection.playStream(ytdl(song.url))
.on('end', reason => {
if (reason === 'Stream is not generating quickly enough.') console.log('Song ended.');
serverQueue.songs.shift();
play(guild, serverQueue.songs[0]);
})
.on('error', error => console.log(error));
dispatcher.setVolumeLogarithmic(serverQueue.volume / 5);
serverQueue.textChannel.send(`**${song.title}**, is now playing!`);
}
}
我认为问题出在此处。
【问题讨论】:
-
我不知道是什么问题,但你把你的 ytb api 密钥留在了 pastebin 中......小心
-
我知道,你真的不能用它做任何事,但还是谢谢你这么说
标签: javascript discord.js