我有一个不和谐的机器人写在不和谐的js。我有一个命令,在语音频道播放mp3文件。
const connection = await channel.join();
const dispatcher = connection.playStream(fs.createReadStream('/absolute/path/to/file.mp3'), { type: 'ogg/opus', volume: true });
如果我在我的windows pc上运行bot,一切都会正常工作。机器人加入频道,播放文件,然后再次离开。如果我在我的Ubuntu18.04虚拟机上运行bot,bot会在不播放文件的情况下加入并立即断开连接。
mp3文件的路径是绝对的。我已经尝试使用connection.play文件(路径)代替相同的问题。我尝试使用opuscript和我尝试使用node-opus。我有ffmpeg通过apt安装。Node和npm在最新版本上运行。我还尝试使用discord.js的主分支,但仍然没有运气。我试图删除所有内容并重新安装,但仍然不起作用。
关于不和。JSV12您现在只能使用。play()
方法,因此您的解决方案应该是:
channel.join()
.then(connection => {
const stream = connection.play('/path/to/file.mp3');
stream.on("finish", () => {
channel.leave();
});
});