Update bot to use command controller for interactions and calls

This commit is contained in:
Logan Cusano
2023-03-26 16:43:51 -04:00
parent 95c714f0aa
commit e537ce8778
5 changed files with 123 additions and 121 deletions

View File

@@ -2,15 +2,7 @@
const { DebugBuilder } = require("../utilities/debugBuilder.js");
const log = new DebugBuilder("client", "clientController");
// Modules
const path = require('path');
const fork = require('child_process').fork;
const discordBotPath = path.resolve('discord-bot/app.js');
const {getVoiceConnection} = require("@discordjs/voice");
const {replyToInteraction} = require("../utilities/messageHandler.js");
// Commands
const { ping } = require('../commands/ping.js');
const { join } = require('../commands/join.js');
const { leave } = require('../commands/leave.js');
const { status, join, leave } = require("./commandController")
/**
* Get an object of client guilds
@@ -30,7 +22,7 @@ exports.getStatus = (res, req) => {
log.DEBUG("Guild IDs: ", guildIds);
var guildStatuses = []
for (const guildID of guildIds){
this.status({guildID: guildID, callback: (statusObj) => {
status({guildID: guildID, callback: (statusObj) => {
log.DEBUG("Status Object string: ", statusObj);
if (!statusObj.voiceConnection) guildStatuses.push({ guildID : 201 });
else guildStatuses.push({ guildID: 202 })
@@ -60,27 +52,4 @@ exports.leaveServer = (res, req) => {
leave({guildID: guildID, callback: (response) => {
return res.sendStatus(202);
}});
}
exports.status = async function status({interaction= undefined, guildID= undefined, callback = undefined}) {
//if (!interaction && !guildID) // Need error of sorts
if (interaction){
guildID = interaction.guild.id;
}
const voiceConnection = getVoiceConnection(guildID);
const statusObj = {
"guildID": guildID, "voiceConnection": voiceConnection
}
//log.DEBUG('Status Object: ', statusObj);
// get the status and return it accordingly (message reply / module)
if (interaction) {
return replyToInteraction(interaction, "Pong! I have Aids and now you do too!");
}
else {
callback(statusObj);
}
}