当我尝试播放Music Discord Bot时,它不会播放音乐。它使用ytdl-core和ffmpeg我的代码是:
const Discord = require('discord.js');
const bot = new Discord.Client
const ytdl = require("ytdl-core")
const token = 'API TOKEN'
const PREFIX = '?';
var version = '1.2';
var servers = {};
bot.on('ready', () =>{
console.log('This bot is online!' + version);
})
bot.on('message', message => {
let args = message.content.substring(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){
message.channel.send("You must be in a Voice Channel to play the bot!")
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.voice) message.member.voice.channel.join().then(function(connection){
play(connection, message);
})
break;
}
});
bot.login(token);
每当我尝试播放歌曲时,都会发生此错误:
(节点:5180)UnhandledPromiseRejectionWarning:错误:找不到FFmpeg / avconv!在Function.create(C:\ Users \ picar \ Desktop \ DiscordMusicBot \下的Function.getInfo(C:\ Users \ picar \ Desktop \ DiscordMusicBot \ node_modules \ prism-media \ src \ core \ FFmpeg.js:130:11)新FFmpeg上的node_modules \ prism-media \ src \ core \ FFmpeg.js:143:38)(C:\ Users \ picar \ Desktop \ DiscordMusicBot \ node_modules \ prism-media \ src \ core \ FFmpeg.js:44:27 )在AudioConnection.play(C:\ Users \ picar)(C:\ Users \ picar \ Desktop \ DiscordMusicBot \ node_modules \ discord.js \ src \ client \ voice \ player \ BasePlayer.js:47:20) \ Desktop \ DiscordMusicBot \ node_modules \ discord.js \ src \ client \ voice \ util \ PlayInterface.js:71:28)在(C:\ Users \ picar \ Desktop \ DiscordMusicBot \ index.js:29:48) C:\ Users \ picar \ Desktop \ DiscordMusicBot \ index.js:66:17在processTicksAndRejections(internal / process / task_queues.js:97:5)(节点:5180)UnhandledPromiseRejectionWarning:未处理的承诺拒绝。该错误是由于在没有catch块的情况下抛出异步函数而引起的,或者是由于拒绝了未经.catch()处理的诺言而引起的。要在未处理的承诺拒绝时终止节点进程,请使用CLI标志
--unhandled-rejections=strict
(请参阅https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode)。(拒绝ID:1)(节点:5180)[DEP0018] DeprecationWarning:不建议使用未处理的承诺拒绝。将来,未处理的承诺拒绝将以非零退出代码终止Node.js进程
当我正在观看的教程使用其他版本的所有内容时,我感到非常沮丧!!!请帮忙。
您安装了FFmpeg吗?还是ffmpeg-static?
尝试做npm i ffmpeg ffmpeg-static
,它应该更新所有内容,让我们知道它是否有任何更改!
也尝试安装,npm i @discordjs/opus
因为需要在Discord中播放音频:)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句