get_chat_demo/
get-chat-demo.rs1use maxbot::MaxClient;
11use std::env;
12
13#[tokio::main]
14async fn main() -> Result<(), Box<dyn std::error::Error>> {
15 let token = env::var("MAXBOT_TOKEN").expect("Missing MAXBOT_TOKEN");
16 let chat_id = env::var("CHAT_ID")
17 .expect("Missing CHAT_ID")
18 .parse::<i64>()?;
19
20 if let Ok(proxy_url) = env::var("MAXBOT_PROXY") {
21 maxbot::set_global_base_url(proxy_url);
22 }
23
24 let client = MaxClient::new(token);
25 let chat = client.get_chat(chat_id).await?;
26
27 println!("Информация о чате {}:", chat_id);
28 println!(" ID: {}", chat.chat_id);
29 println!(" Тип: {}", chat.r#type.as_str());
30 println!(" Статус: {}", chat.status.as_str());
31 if let Some(title) = &chat.title {
32 println!(" Название: {}", title);
33 }
34 if let Some(icon) = &chat.icon {
35 println!(" Иконка: {}", icon.url);
36 }
37 println!(" Последнее событие: {}", chat.last_event_time_formatted());
38 println!(" Участников: {}", chat.participants_count);
39 if let Some(owner_id) = chat.owner_id {
40 println!(" Владелец ID: {}", owner_id);
41 }
42 println!(" Публичный: {}", chat.is_public);
43 if let Some(link) = &chat.link {
44 println!(" Ссылка: {}", link);
45 }
46 if let Some(desc) = &chat.description {
47 println!(" Описание: {}", desc);
48 }
49 if let Some(dialog_user) = &chat.dialog_with_user {
50 println!(
51 " Диалог с пользователем: {} {} (ID: {})",
52 dialog_user.first_name,
53 dialog_user.last_name.as_deref().unwrap_or(""),
54 dialog_user.user_id
55 );
56 }
57 if let Some(pinned) = &chat.pinned_message {
58 println!(" Закреплённое сообщение: {:?}", pinned);
59 }
60
61 Ok(())
62}