From cac238df97e8e1dd946a134ff57fc82b35d4245b Mon Sep 17 00:00:00 2001 From: Pavel Kirilin <win10@list.ru> Date: Thu, 23 Feb 2023 00:48:30 +0400 Subject: [PATCH] Changed bot logic. Signed-off-by: Pavel Kirilin <win10@list.ru> --- src/bot/main.rs | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/src/bot/main.rs b/src/bot/main.rs index fd91a2b..1288014 100644 --- a/src/bot/main.rs +++ b/src/bot/main.rs @@ -155,11 +155,10 @@ async fn run(args: BotConfig, client: Client) -> anyhow::Result<()> { Ok(()) } -/// The main entrypoint for bot. -/// -/// This function starts bot, performs login and -/// starts endless loop. -pub async fn start(args: BotConfig, web_code: Arc<RwLock<Option<String>>>) -> anyhow::Result<()> { +pub async fn bot_life( + args: BotConfig, + web_code: Arc<RwLock<Option<String>>>, +) -> anyhow::Result<()> { log::info!("Connecting to Telegram..."); let client = Client::connect(Config { session: Session::load_file_or_create(args.session_file.as_str())?, @@ -189,3 +188,21 @@ pub async fn start(args: BotConfig, web_code: Arc<RwLock<Option<String>>>) -> an Ok(()) } + +/// The main entrypoint for bot. +/// +/// This function starts bot, performs login and +/// starts endless loop. +pub async fn start(args: BotConfig, web_code: Arc<RwLock<Option<String>>>) -> anyhow::Result<()> { + loop { + match bot_life(args.clone(), web_code.clone()).await { + Err(err) => { + log::error!("{err}"); + } + Ok(_) => { + log::info!("Lol, messages are ended."); + } + } + tokio::time::sleep(Duration::from_secs(1)).await; + } +} -- GitLab