From 3c8a456b2c8c8fc22b4959682abf826a0363ca6f Mon Sep 17 00:00:00 2001 From: Max batleforc Date: Wed, 4 Jun 2025 01:25:39 +0200 Subject: [PATCH] feat: answer atm --- .vscode/settings.json | 5 ++++- libs/api/src/lib.rs | 2 +- libs/bot/src/event/mod.rs | 14 +++++++++++++- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 0a042bb..ad2d495 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -11,9 +11,12 @@ "gitlens.plusFeatures.enabled": false, "editor.guides.bracketPairs": true, "cSpell.words": [ + "actix", "clickhouse", "datalake", + "openapi", + "utoipa", "uuid", "Uuid" - ], + ] } diff --git a/libs/api/src/lib.rs b/libs/api/src/lib.rs index 28a6778..cc45af1 100644 --- a/libs/api/src/lib.rs +++ b/libs/api/src/lib.rs @@ -50,7 +50,7 @@ pub async fn init_api(config: Config, pool: Arc, http: Arc) - .bind((Ipv4Addr::UNSPECIFIED, port)) .map_err(|e| { error!("Failed to bind API server: {}", e); - })? + })? .run() .await .map_err(|e| { diff --git a/libs/bot/src/event/mod.rs b/libs/bot/src/event/mod.rs index aa742bb..3e460b1 100644 --- a/libs/bot/src/event/mod.rs +++ b/libs/bot/src/event/mod.rs @@ -5,7 +5,7 @@ use database::{ trivial_question::TrivialQuestion, trivial_round::TrivialRound, }; -use poise::serenity_prelude::{self as serenity, ActivityData, FullEvent}; +use poise::serenity_prelude::{self as serenity, ActivityData, CreateMessage, FullEvent}; use tracing::{info, span, Instrument}; pub async fn event_handler( @@ -131,6 +131,18 @@ pub async fn event_handler( *new_message.timestamp, )); inserter.write(&trivia_round.clone()).await?; + let optimize = TrivialRound::optimize_table_sql(); + match manager_pool.execute_with_retry(&optimize).await { + Ok(_) => {} + Err(e) => { + tracing::error!("Failed to optimize trivia round table: {}", e); + } + } + let builder = CreateMessage::new() + .content("Answer taken into account!") + .reference_message(new_message) + .flags(serenity::MessageFlags::EPHEMERAL); + channel_id.send_message(&ctx.http, builder).await?; Ok(()) } .instrument(span!(