javascript - 音乐机器人问题 discord.js
问题描述
我试图制作一个简单的音乐机器人。当我尝试“!play {youtube url}”时,机器人加入了VC,但没有声音。这是代码:
case 'play':
function play(connection, message) {
var servers = 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.reply("provide a link!");
return;
}
if (!message.member.voice.channel.join()){
message.reply("you must be in a voice channel to play the music!");
return;
}
if(!servers[message.guild.id]) servers[message.guild.id] = {
queue: []
}
var server = servers[message.guild.id];
server.queue.push(args[1]);
if (!message.member.voiceConnection) message.member.voice.channel.join().then(function(connection){
play(connection, message);
message.reply("your song is playing!");
})
break;
当我输入一个 youtube 网址时,在 VS 中会显示:
(node:8092) UnhandledPromiseRejectionWarning: TypeError: Cannot read property '858216105305964566' of undefined
解决方案
推荐阅读
- javascript - 如果使用 jQuery 更改值,reactjs onchange 不起作用
- mongodb - 查找共享相同“日期”值的 3 个或更多文档的集合
- android - 如何成功同步 build.gradle 文件?
- vuejs2 - Vue上如何调用store(vuex)
- vue.js - 如何在 vue js 选择选项中传递数据属性
- mysql - 使用 maven 打包时将 MySQL 连接器 java 添加到模块化 Javafx 项目
- vim - coc.nvim: 'self', numbers([0-9]) 和字符串不显示在 CocAction(doHover) show_documentation(?)
- swift - Swift:在 IOS13+ 上设置状态栏颜色(使用 statusBarManager)
- node.js - Cloud Functions 中的 Firebase 管理员数据操作问题
- python - python执行命令问题