From ed013fae4dc09a932f16cf7d0dd87bb2eb6955ee Mon Sep 17 00:00:00 2001 From: mykola2312 <49044616+mykola2312@users.noreply.github.com> Date: Wed, 21 Feb 2024 18:42:09 +0200 Subject: [PATCH] do renaming for command handlers so it wouldn't conflict with other functions --- src/bot/bot.rs | 8 ++++---- src/dl/yt_dlp.rs | 1 + src/main.rs | 26 ++------------------------ 3 files changed, 7 insertions(+), 28 deletions(-) diff --git a/src/bot/bot.rs b/src/bot/bot.rs index 1b750cd..56a43e1 100644 --- a/src/bot/bot.rs +++ b/src/bot/bot.rs @@ -53,8 +53,8 @@ fn schema() -> UpdateHandler { use dptree::case; let command_handler = teloxide::filter_command::() - .branch(case![Command::Test].endpoint(test)) - .branch(case![Command::Download(url)].endpoint(download)); + .branch(case![Command::Test].endpoint(cmd_test)) + .branch(case![Command::Download(url)].endpoint(cmd_download)); let message_handler = Update::filter_message().branch(command_handler); let raw_message_handler = Update::filter_message().branch(dptree::endpoint(handle_message)); @@ -73,13 +73,13 @@ enum Command { Download(String), } -async fn test(bot: Bot, msg: Message) -> HandlerResult { +async fn cmd_test(bot: Bot, msg: Message) -> HandlerResult { bot.send_message(msg.chat.id, "test response").await?; Ok(()) } -async fn download(bot: Bot, msg: Message, url: String) -> HandlerResult { +async fn cmd_download(bot: Bot, msg: Message, url: String) -> HandlerResult { Ok(()) } diff --git a/src/dl/yt_dlp.rs b/src/dl/yt_dlp.rs index c075d0a..c83c0f8 100644 --- a/src/dl/yt_dlp.rs +++ b/src/dl/yt_dlp.rs @@ -134,6 +134,7 @@ pub enum YtDlpError { ErrorMessage(String), // keep it separate type if we ever plan to parse yt-dlp errors JsonError, } +// ^(?:ERROR: \[.*\] \S* )(.*$) - regex for matching yt-dlp's youtube errors impl From for YtDlpError { fn from(value: SpawnError) -> Self { diff --git a/src/main.rs b/src/main.rs index 264b208..98fd46e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,37 +1,15 @@ use dotenv::dotenv; -use std::env; mod bot; use bot::bot::bot_main; mod dl; -use dl::ffmpeg::FFMpeg; -use dl::yt_dlp::YtDlp; #[tokio::main] async fn main() -> anyhow::Result<()> { dotenv().ok(); + //dotenv::from_filename(".env.test").ok(); - let info = YtDlp::load_info(env::var("TEST_URL")?.as_str()) - .await - .expect("load_info"); - for format in &info.formats { - println!("{}", format); - } - println!(""); - - let video = info.best_av_format().unwrap(); - println!("{}", video); - - let audio = info.best_audio_format().unwrap(); - println!("{}", audio); - - println!("abr {}", FFMpeg::round_mp3_bitrate(129.492)); - - FFMpeg::convert_to_mp3("audio.m4a", "audio.mp3", 160) - .await - .expect("convert"); - + bot_main().await?; Ok(()) - //bot_main().await }