Telexide is an easy to use library for making a telegram bot, built on tokio and hyper.
View the [examples] on how to make and structure a bot.
Use the [ClientBuilder
] to easily create a [Client
] object to your
preferences and register commands with the [create_framework
] macro and/or
register your own update handlers, before running [Client::start
] to start
your bot. All of this is designed to be highly customisable. For further
information about the client, please see the client's module-level
documentation.
API calls are easy to make using the [APIClient
] and the api data models,
or create and use your own api client by implementing the [API
] trait. For
further information about the api client, please see the api's module-level
documentation.
A default command framework is provided using the [Framework
] object,
providing easy handling of incoming telegram bot commands
sent by users of your bot. For further information about the framework,
please see the framework's module-level documentation.
A basic ping-pong bot can be written like:
```rust use std::env; use telexide_fork::{api::types::SendMessage, prelude::*};
async fn ping(context: Context, message: Message) -> CommandResult { context .api .sendmessage(SendMessage::new(message.chat.getid(), "pong")) .await?; Ok(()) }
async fn main() -> telexidefork::Result<()> { let token = env::var("BOTTOKEN").expect("no token environment variable set");
ClientBuilder::with_framework(
create_framework!("ping-pong", ping),
token
).start().await
} ```
For more examples, please see the examples dir.
ChatMember::kick
)Add the following to your Cargo.toml
file:
toml
[dependencies]
telexide = "0.1.6"
The minimum supported version is 1.46. The current Telexide version is not guaranteed to build on Rust versions earlier than the minimum supported version.