我想创建一个discord.js Discrod机器人。现在我正在使用ffmpeg和ytdl-core创建一个音乐模块,当我运行命令时它会响应: https://pastebin.com/6GwkRfSA。我该如何运作?
const Discord = require('discord.js');
const client = new Discord.Client();
const YTDL = require("ytdl-core");
var servers = {
}
function play(connection, message) {
var server = servers[message.guild.id]
server.dispatcher = connection.playStream(YTDL(server.queue[0], {filter: "audioonly"} ));
server.queue.shift();
server.dispatcher.on("end", function() {
if (server.queue[0]) play(connection, message);
else connection.disconnect();
})
}
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
});
client.on('message', msg => {
const args = msg.content.trim().split(/ +/g);
const cmd = args.shift().toLowerCase();
if (cmd == "$play") {
if (!args[0]) {
msg.channel.send("Forgot about link!");
return;
}
if (!msg.member.voiceChannel) {
msg.channel.send("Join a voica channel first!");
return;
}
if (!servers[msg.guild.id]) servers[msg.guild.id] = {
queue: []
};
var server = servers[msg.guild.id];
server.queue.push(args[0])
if(!msg.guild.voiceConnection) ( msg.member.voiceChannel.join())
.then(function(connection) {
play(connection, msg);
})
}
});
client.login(MYTOKEN);