我正在尝试在Discord.JS制作音乐机器人。但是,我在调试代码时遇到错误。 这是代码:
var channel = message.member.voiceChannel;
if(!message.guild.voiceConnection) channel.join().then(function(connection){
play(connection, message);
});
播放是我在代码中创建的函数。
我得到的错误是:
^
TypeError: Cannot read property 'join' of undefined
at Client.<anonymous> (C:\Users\ryans\Desktop\STATICbot\index.js:112:56)
at emitOne (events.js:116:13)
at Client.emit (events.js:211:7)
at MessageCreateHandler.handle (C:\Users\ryans\Desktop\STATICbot\node_modules\discord.js\src\client\websocket\packets\handlers\MessageCreate.js:9:34)
at WebSocketPacketManager.handle (C:\Users\ryans\Desktop\STATICbot\node_modules\discord.js\src\client\websocket\packets\WebSocketPacketManager.js:103:65)
at WebSocketConnection.onPacket (C:\Users\ryans\Desktop\STATICbot\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:330:35)
at WebSocketConnection.onMessage (C:\Users\ryans\Desktop\STATICbot\node_modules\discord.js\src\client\websocket\WebSocketConnection.js:293:17)
at WebSocket.onMessage (C:\Users\ryans\Desktop\STATICbot\node_modules\ws\lib\EventTarget.js:99:16)
at emitOne (events.js:116:13)
at WebSocket.emit (events.js:211:7)
我尝试将 message.member.voiceChannel 中的成员更改为成员,但这不起作用。
我还尝试在变量之外和 .join()之前设置 message.member.voiceChannel 。
非常感谢任何帮助,谢谢!
答案 0 :(得分:0)
错误代码所说的是,发送消息的用户不在任何语音通道中,因此机器人无法加入该频道。
可能的解决方案:
答案 1 :(得分:0)
我在不一致的机器人代码中使用与此类似的内容
voiceChannel = message.member.voiceChannel;
voiceChannel.join().then(function (connection) {
}