diff --git a/breadbot.js b/breadbot.js index 17cbc38..4da7cc9 100644 --- a/breadbot.js +++ b/breadbot.js @@ -103,7 +103,17 @@ client.on(Events.VoiceStateUpdate, async (oldState, newState) => { // This should always have something to do, as all callIDs should be unique fs.mkdirSync("." + path.sep + "media" + path.sep + "voice_audio" + path.sep + newCallID, {recursive: true}) - connection = newState.channel.join().then(conn => { + const voiceChannel = newState.guild.channels.cache + .filter(c => c.type == "voice" || c.type == "stage") + .find(c => c.id == newState.channelId) + + if(!voiceChannel) { + console.log("VOICE CHANNEL LOOKUP FAILED") + + return + } + + connection = voiceChannel.join().then(conn => { const receiver = conn.receiver conn.on("speaking", (user, speaking) => { diff --git a/utilities/sqlutil.js b/utilities/sqlutil.js index 9fb1edc..5c43174 100644 --- a/utilities/sqlutil.js +++ b/utilities/sqlutil.js @@ -162,7 +162,7 @@ async function inCall(server_snowflake, channel_snowflake) { } async function registerNewCall(server_snowflake, channel_snowflake, call_start_time) { - return connection_pool.query("INSERT INTO call_states VALUES (?, ?, ?)", [server_snowflake, channel_snowflake, call_start_time]).then(async ([rows, fields]) => { + return connection_pool.query("INSERT INTO call_states VALUES (?, ?, ?, NULL, 0, 0, 0)", [server_snowflake, channel_snowflake, call_start_time]).then(async ([rows, fields]) => { if (rows.length == 0) { return -1; } else {