diff options
| author | Andrew Lee <andrew@alee14.me> | 2025-03-27 01:59:14 -0400 |
|---|---|---|
| committer | Andrew Lee <andrew@alee14.me> | 2025-03-27 01:59:14 -0400 |
| commit | 7b9a58cac0b59a73562d68540292e89f57bf30cf (patch) | |
| tree | bb4c8344ef0e461e4ab5c7b47ebca904819fcb59 | |
| parent | 598e23ab48f29e13b490ac15acc6f7bbe3671028 (diff) | |
| download | AleeBot-7b9a58cac0b59a73562d68540292e89f57bf30cf.tar.gz AleeBot-7b9a58cac0b59a73562d68540292e89f57bf30cf.tar.bz2 AleeBot-7b9a58cac0b59a73562d68540292e89f57bf30cf.zip | |
More activities; LLM model now needs .env; No longer need to confirm a pending quote
| -rw-r--r-- | bot/.env.example | 1 | ||||
| -rw-r--r-- | bot/src/plugins/chatbot.js | 5 | ||||
| -rw-r--r-- | bot/src/storage/activities.js | 20 | ||||
| -rw-r--r-- | bot/src/storage/consts.js | 1 | ||||
| -rw-r--r-- | web/src/app/quotes/page.js | 100 |
5 files changed, 69 insertions, 58 deletions
diff --git a/bot/.env.example b/bot/.env.example index 40766e0..c132012 100644 --- a/bot/.env.example +++ b/bot/.env.example @@ -3,6 +3,7 @@ PORT=3010 CLIENT_ID=[Bot ID] STATUS_CHANNEL_ID=[Channel ID] OLLAMA_URL=[Ollama API URL] +OLLAMA_MODEL=[LLM] JWT_SECRET=[openssl rand -base64 32] API_USERNAME=admin diff --git a/bot/src/plugins/chatbot.js b/bot/src/plugins/chatbot.js index 17a26ee..efd2ff5 100644 --- a/bot/src/plugins/chatbot.js +++ b/bot/src/plugins/chatbot.js @@ -1,7 +1,8 @@ -import { ollamaGlobal, ollamaModel } from '../storage/consts.js'; +import { ollamaGlobal } from '../storage/consts.js'; import { ollama } from '../utils/ollama.js'; import { AttachmentBuilder } from 'discord.js'; import { guildSettings } from '../models/guild-settings.js'; +import 'dotenv/config'; export async function ChatBot(msg, args) { const guildSetting = await guildSettings.findOne({ where: { guildID: msg.guild.id } }); @@ -13,7 +14,7 @@ export async function ChatBot(msg, args) { const loadingMessage = await msg.reply('Thinking...'); const response = await ollama.chat({ - model: ollamaModel, + model: process.env.OLLAMA_MODEL, messages: [{ role: 'user', content: args }], }); diff --git a/bot/src/storage/activities.js b/bot/src/storage/activities.js index 73051de..9394e15 100644 --- a/bot/src/storage/activities.js +++ b/bot/src/storage/activities.js @@ -97,6 +97,8 @@ export const activities = [ { name: 'Linux, but actually GNU/Linux', type: 0 }, { name: 'Debloating my ThinkPad', type: 4 }, { name: 'Turbotastic!', type: 4 }, + { name: 'Leap of Faith', type: 0 }, + { name: 'Lexi Dimante', type: 2 }, { name: 'Artemis', type: 0 }, { name: 'Helping Kapuletti Industries', type: 4 }, { name: 'Frank (The Game)', type: 0 }, @@ -116,8 +118,8 @@ export const activities = [ { name: '86Box', type: 0 }, { name: 'AIM', type: 0 }, { name: 'Software Inc.', type: 0 }, - { name: 'Nintendo GameBoy', type: 0 }, - { name: 'Nintendo GameBoy Advanced', type: 0 }, + { name: 'Nintendo Game Boy', type: 0 }, + { name: 'Nintendo Game Boy Advance', type: 0 }, { name: 'Nintendo DS', type: 0 }, { name: 'Nintendo DSi', type: 0 }, { name: 'Nintendo 3DS', type: 0 }, @@ -129,5 +131,17 @@ export const activities = [ { name: 'Nintendo Wii U', type: 0 }, { name: 'Nintendo Switch', type: 0 }, { name: 'Nintendo Switch 2', type: 0 }, - { name: 'Sony Playstation 2', type: 0 } + { name: 'Sony Playstation', type: 0 }, + { name: 'Sony Playstation 2', type: 0 }, + { name: 'Sony Playstation 3', type: 0 }, + { name: 'Sony Playstation 4', type: 0 }, + { name: 'Sony Playstation 5', type: 0 }, + { name: 'Microsoft Xbox', type: 0 }, + { name: 'Microsoft Xbox 360', type: 0 }, + { name: 'Microsoft Xbox One', type: 0 }, + { name: 'Microsoft Xbox Series X', type: 0 }, + { name: 'Microsoft Xbox Series S', type: 0 }, + { name: 'Dance Dance Revolution', type: 0 }, + { name: 'Dance Dance Revolution SuperNOVA', type: 0 }, + { name: 'Pump It Up', type: 0 } ]; diff --git a/bot/src/storage/consts.js b/bot/src/storage/consts.js index 231f5ca..b62d218 100644 --- a/bot/src/storage/consts.js +++ b/bot/src/storage/consts.js @@ -1,6 +1,5 @@ export const abEmbedColour = '#0066a6'; export const ollamaGlobal = true; -export const ollamaModel = 'aleebot-deepseek'; export const featureSuggestChannel = '427495678390960148'; export const userWhitelist = ['242775871059001344']; diff --git a/web/src/app/quotes/page.js b/web/src/app/quotes/page.js index 27ae439..0dde1ec 100644 --- a/web/src/app/quotes/page.js +++ b/web/src/app/quotes/page.js @@ -86,64 +86,60 @@ export default function Quotes() { }; const handleApproveQuote = async (id) => { - if (window.confirm('Are you sure you want to approve this quote?')) { - try { - const response = await fetchWithAuth('/api/quotes/approve', { - method: 'POST', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify({ id }) - }); - - if (!response.ok) { - throw new Error('Failed to approve quote'); - } - - setMessage({ - type: 'success', - text: 'Quote approved successfully' - }); - - // Refresh quotes - fetchPendingQuotes(); - } catch (err) { - setMessage({ - type: 'error', - text: err.message - }); + try { + const response = await fetchWithAuth('/api/quotes/approve', { + method: 'POST', + headers: { + 'Content-Type': 'application/json' + }, + body: JSON.stringify({ id }) + }); + + if (!response.ok) { + throw new Error('Failed to approve quote'); } + + setMessage({ + type: 'success', + text: 'Quote approved successfully' + }); + + // Refresh quotes + fetchPendingQuotes(); + } catch (err) { + setMessage({ + type: 'error', + text: err.message + }); } }; const handleRejectQuote = async (id) => { - if (window.confirm('Are you sure you want to reject this quote?')) { - try { - const response = await fetchWithAuth('/api/quotes/reject', { - method: 'POST', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify({ id }) - }); - - if (!response.ok) { - throw new Error('Failed to reject quote'); - } - - setMessage({ - type: 'success', - text: 'Quote rejected successfully' - }); - - // Refresh quotes - fetchPendingQuotes(); - } catch (err) { - setMessage({ - type: 'error', - text: err.message - }); + try { + const response = await fetchWithAuth('/api/quotes/reject', { + method: 'POST', + headers: { + 'Content-Type': 'application/json' + }, + body: JSON.stringify({ id }) + }); + + if (!response.ok) { + throw new Error('Failed to reject quote'); } + + setMessage({ + type: 'success', + text: 'Quote rejected successfully' + }); + + // Refresh quotes + fetchPendingQuotes(); + } catch (err) { + setMessage({ + type: 'error', + text: err.message + }); } }; |
