tbot

Make cool Telegram bots with Rust easily. For example, here's a simple echo bot:

```rust use tbot::prelude::*;

[tokio::main]

async fn main() { let mut bot = tbot::fromenv!("BOTTOKEN").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();

} ```

There are many examples in the [examples] directory to see tbot in action. If you want to see real-world use of tbot, check out this list.

If you're a newcomer, we recommend you go through the [tutorial] first. We also have several How-to guides to help you use tbot. You can always refer to our API docs on docs.rs (also, docs for master are available here).

If you have a question, ask it in [our group] on Telegram. If you find a bug, file an issue on either our [GitLab] or [GitHub] repository.

Features

Installation

Add tbot and tokio to your Cargo.toml:

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

tokio is required to start the runtime. You'll also need the macros feature of tokio if you're going to start the runtime using #[tokio::main].

Contribution

Glad you want to contribute to tbot! We develop the crate on [GitLab], so create your merge request there if you can. We may accept pull requests on [GitHub] as well, but we prefer [GitLab].