//! The example shows how to send a file use std::env; use dotenvy::dotenv; use tgbot::{ api::Client, handler::{LongPoll, UpdateHandler}, types::{InputFile, SendDocument, Update}, }; struct Handler { client: Client, file_url: String, } impl UpdateHandler for Handler { async fn handle(&self, update: Update) { log::info!("Got an update: {:?}", update); let chat_id = update.get_chat_id().unwrap(); self.client .execute(SendDocument::new(chat_id, InputFile::url(&self.file_url))) .await .unwrap(); } } #[tokio::main] async fn main() { dotenv().ok(); env_logger::init(); let token = env::var("TGBOT_TOKEN").expect("TGBOT_TOKEN is not set"); let file_url = env::var("TGBOT_FILE_URL").expect("TGBOT_FILE_URL is not set"); let client = Client::new(token).expect("Failed to create API"); LongPoll::new(client.clone(), Handler { client, file_url }).run().await; }