#telegram-bot #telegram #bot-api

tbot

用Rust轻松制作酷炫的Telegram机器人

20个版本

0.6.7 2020年11月3日
0.6.5 2020年7月16日
0.5.2 2020年3月31日
0.4.0 2019年12月31日
0.1.2 2019年7月30日

#587 in 异步

Download history 46/week @ 2024-03-11 58/week @ 2024-03-18 6/week @ 2024-03-25 123/week @ 2024-04-01 10/week @ 2024-04-08 25/week @ 2024-04-15 48/week @ 2024-04-22 22/week @ 2024-04-29 13/week @ 2024-05-06 19/week @ 2024-05-13 13/week @ 2024-05-20 33/week @ 2024-05-27 27/week @ 2024-06-03 4/week @ 2024-06-10 16/week @ 2024-06-17 14/week @ 2024-06-24

65 每月下载量
2 crates 中使用

MIT 许可

1MB
21K SLoC

tbot

用Rust轻松制作酷炫的Telegram机器人。例如,这是一个简单的回声机器人

use tbot::prelude::*;

#[tokio::main]
async fn main() {
    let mut bot = tbot::from_env!("BOT_TOKEN").event_loop();

    bot.text(|context| async move {
        let echo = &context.text.value;
        let call_result = context.send_message(echo).call().await;

        if let Err(err) = call_result {
            dbg!(err);
        }
    });

    bot.polling().start().await.unwrap();
}

有许多 示例 可以看到 tbot 的实际应用。如果您想了解 tbot 的实际使用,请查看 这个列表

如果您是新手,我们建议您先通过 教程。我们还有一些 使用指南 帮助您使用 tbot。您始终可以参考我们 docs.rs 上的API文档(同时,master 的文档也在这里提供 这里)。

如果您有任何问题,请在 我们的Telegram群组 中提问。如果您发现任何错误,请在我们的 GitLabGitHub 仓库中提交问题。

功能

  • 完全支持Telegram Bot API 4.9,以及媒体下载/上传、轮询和 webhooks;
  • async/.await 支持,基于 tokio;
  • 类型安全和惯用API;
  • 易于使用,同时可扩展和可配置。

安装

tbottokio 添加到您的 Cargo.toml

[dependencies]
tbot = "0.6"
tokio = { version = "0.2", features = ["macros"] }

tokio 是启动运行时所需的。如果您打算使用 #[tokio::main] 来启动运行时,还需要 tokiomacros 功能。

贡献

很高兴您想为 tbot 贡献!我们正在 GitLab 上开发这个crate,因此如果您可以的话,请在那里创建您的合并请求。我们也可以接受 GitHub 上的pull请求,但我们更倾向于 GitLab

依赖

~10–23MB
~341K SLoC