From 84b5545c5b7fc73a32b943e6ca32cdf3747599d5 Mon Sep 17 00:00:00 2001 From: evan Date: Tue, 29 Apr 2025 09:58:59 -0700 Subject: [PATCH] remove DiscordBot.ts, since this will be handled in a seperate service --- src/server/DiscordBot.ts | 61 ---------------------------------------- 1 file changed, 61 deletions(-) delete mode 100644 src/server/DiscordBot.ts diff --git a/src/server/DiscordBot.ts b/src/server/DiscordBot.ts deleted file mode 100644 index bfff67f2a..000000000 --- a/src/server/DiscordBot.ts +++ /dev/null @@ -1,61 +0,0 @@ -import { SecretManagerServiceClient } from "@google-cloud/secret-manager"; -import { Client, Events, GatewayIntentBits } from "discord.js"; - -export class DiscordBot { - private client: Client; - private secretManager: SecretManagerServiceClient; - - constructor() { - this.client = new Client({ - intents: [ - GatewayIntentBits.Guilds, - GatewayIntentBits.GuildMessages, - GatewayIntentBits.MessageContent, - ], - }); - this.secretManager = new SecretManagerServiceClient(); - this.setupEventHandlers(); - } - - private setupEventHandlers(): void { - this.client.once(Events.ClientReady, (c) => { - console.log(`Ready! Logged in as ${c.user.tag}`); - }); - - this.client.on(Events.MessageCreate, async (message) => { - if (message.author.bot) return; - - if (message.content === "!ping") { - await message.reply("Pong! 🏓"); - } - - if (message.content === "!hello") { - await message.reply(`Hello ${message.author.username}! 👋`); - } - }); - } - - private async getToken(): Promise { - const name = - "projects/openfrontio/secrets/discord-bot-token/versions/latest"; - const [version] = await this.secretManager.accessSecretVersion({ name }); - return version.payload?.data?.toString().trim(); - } - - public async start(): Promise { - try { - const token = await this.getToken(); - if (!token) { - throw new Error("Failed to retrieve Discord token"); - } - await this.client.login(token); - } catch (error) { - console.error("Failed to start bot:", error); - throw error; - } - } - - public stop(): void { - this.client.destroy(); - } -}