歌曲结束时,Discord 音乐机器人不会离开服务器
Posted
技术标签:
【中文标题】歌曲结束时,Discord 音乐机器人不会离开服务器【英文标题】:Discord music bot doesn't leave the server when the song ends 【发布时间】:2020-11-22 00:08:11 【问题描述】:我正在开发一个名为 Amadeus 的不和谐机器人。 Amadeus 在收到给定命令时会播放音乐……嗯……他会的。现在,当我还在为他工作时,他只播放一首歌。虽然他连接到语音频道并完美地播放他的歌曲 - 一旦他的歌曲结束,他就不会离开语音频道。出于某种原因,我猜它永远不会检测到歌曲结束?任何帮助表示赞赏
const connection = message.member.voice.channel.name;
const channel = message.member.voice.channel;
message.channel.send("Now playing Scythe OST in the " + connection + " channel.");
channel.join().then(connection =>
const dispatcher = connection.play('./Scythe Digital Edition - Soundtrack/01 Europa 1920.mp3');
dispatcher.on("end", end =>
channel.leave()
);
)
.catch(console.error);
【问题讨论】:
你试过dispatcher.on("finish", () =>
吗?
【参考方案1】:
正如@Tenclea 所建议的,如果您查看Discord.js Documentation > Topics,您会发现使用了dispatcher.on("finish", () => )
。
const channel = message.member.voice.channel;
message.channel.send(`Now playing Scythe OST in the $channel.name channel.`);
channel.join().then(connection =>
const dispatcher = connection.play("./Scythe Digital Edition - Soundtrack/01 Europa 1920.mp3");
dispatcher.on("finish", () => channel.leave());
).catch(e => console.log(e))
dispatcher.on("end", () => )
将适用于 Discord JS 版本 11。
【讨论】:
男人!今天我已经厌倦了使用旧的 Discord 11 代码编写示例和教程;-;以上是关于歌曲结束时,Discord 音乐机器人不会离开服务器的主要内容,如果未能解决你的问题,请参考以下文章
Discord 音乐机器人 - 队列 (discord.py)
Discord.js v13,@discordjs/voice 播放音乐命令