3 releases

0.1.2 Jul 18, 2019
0.1.1 Jul 16, 2019
0.1.0 Jul 16, 2019

#99 in #telegram-bot

MIT license

14KB
86 lines

Rust Telegram Bot Framework

License Crates.io

Documentation: Latest crates.io version

A library for writing your own Telegram bots. More information here. Official API here.

Example

Here is a simple example of handling user command (see example/hello.rs):

use bot_framework::BotWrapper;
use std::env;
use telegram_bot::prelude::*;

fn main() {
    let token = env::var("TELEGRAM_BOT_KEY").expect("TELEGRAM_BOT_KEY not found in env");
    let mut bot = BotWrapper::new(token);
    bot.command("hello".into(), |api, msg| {
        api.spawn(msg.text_reply(format!("Hello, {}!", &msg.from.first_name)));
    });

    bot.run();
}

You can find a bigger examples in the examples.

Usage

This library is available via crates.io. In order to use it, just add this to your Cargo.toml:

bot-framework = "0.1"

The library allows you to do E2E-testing of your bot easily: just specify TELEGRAM_API_URL environment variable to point to your fake Telegram test server.

Collaboration

Yes please! Every type of contribution is welcome: Create issues, hack some code or make suggestions. Don't know where to start? Good first issues are tagged with up for grab.

Dependencies

~9–16MB
~205K SLoC