Expand description
A full-featured framework that empowers you to easily build Telegram bots using Rust. It handles all the difficult stuff so you can focus only on your business logic.
For a high-level overview, see our GitHub repository.
use teloxide::prelude::*;
pretty_env_logger::init();
log::info!("Starting throw dice bot...");
let bot = Bot::from_env().auto_send();
teloxide::repl(bot, |message: Message, bot: AutoSend<Bot>| async move {
bot.send_dice(message.chat.id).await?;
respond(())
})
.await;
Cargo features
Feature | Description |
---|---|
redis-storage | Enables the Redis storage support for dialogues. |
sqlite-storage | Enables the Sqlite storage support for dialogues. |
cbor-serializer | Enables the CBOR serializer for dialogues. |
bincode-serializer | Enables the Bincode serializer for dialogues. |
macros | Re-exports macros from teloxide-macros . |
native-tls | Enables the native-tls TLS implementation (enabled by default). |
rustls | Enables the rustls TLS implementation. |
ctrlc_handler | Enables the Dispatcher::setup_ctrlc_handler function. |
auto-send | Enables the AutoSend bot adaptor. |
throttle | Enables the Throttle bot adaptor. |
cache-me | Enables the CacheMe bot adaptor. |
trace-adaptor | Enables the Trace bot adaptor. |
erased | Enables the ErasedRequester bot adaptor. |
full | Enables all the features except nightly . |
nightly | Enables nightly-only features (see the teloxide-core features). |
Re-exports
pub use teloxide_macros as macros;
pub use dptree;
Modules
Wrappers altering functionality of a bot.
An update dispatching model based on dptree
.
Convenient error handling.
Possible error types.
Network-specific API.
Request data sent to Telegram.
Commonly used items.
Commonly used items.
Telegram API requests.
Telegram API types.
Some useful utilities.
Macros
Enables logging through pretty-env-logger.
Enables logging through pretty-env-logger with a custom filter for your program.
Filters an enumeration, passing its payload forwards.
Structs
A requests sender.
Enums
A kind of an API error.
An error caused by downloading a file.
An error caused by sending a request to Telegram.
Functions
ctrlc_handler
A REPL for commands.
ctrlc_handler
Like commands_repl
, but with a custom UpdateListener
.
Returns a handler that accepts a parsed command C
.
ctrlc_handler
Like repl
, but with a custom UpdateListener
.
A shortcut for ResponseResult::Ok(val)
.