Python error handling (sends Discord DM)

This commit is contained in:
2025-02-18 14:22:26 +01:00
parent 7fc23896cb
commit cb2b5a508e
4 changed files with 39 additions and 3 deletions
+24 -2
View File
@@ -1,8 +1,10 @@
use crate::Context;
use std::env;
use crate::{Args, Context};
use poise::serenity_prelude::json::Value;
use poise::{serenity_prelude::CreateMessage, CreateReply, ReplyHandle};
use poise::serenity_prelude::{Color, CreateEmbed, CreateEmbedAuthor, Timestamp};
use poise::serenity_prelude::{Color, CreateEmbed, CreateEmbedAuthor, Http, Timestamp, UserId};
use serde_json::json;
@@ -135,6 +137,26 @@ pub async fn edit_msg(
}
pub async fn send_dm(msg: String, args: Args) {
let uid = env::var("ASSISTANT_DM_USER").expect("Missing ASSISTANT_DM_USER env var!").parse::<u64>().unwrap();
let user = UserId::new(uid);
let token: String;
if !args.test {
token = std::env::var("ASSISTANT_TOKEN").expect("Missing ASSISTANT_TOKEN env var!");
}
else {
token = std::env::var("ASSISTANT_TOKEN_TEST").expect("Missing ASSISTANT_TOKEN_TEST env var!");
};
let http = Http::new(&token);
let c_msg = CreateMessage::new().content(msg);
let _ = user.dm(http, c_msg).await;
}
pub fn embed_post(post_data: &Value, url: &str, empheral: bool) -> EmbedOptions {
let media_type = &post_data["post_data"]["media_type"];
let re_votes = &post_data["votes"]["voters_re"].as_array().unwrap().len();