2 个不稳定版本
使用旧的 Rust 2015
0.2.0 | 2018年7月18日 |
---|---|
0.1.0 | 2015年9月2日 |
#43 in #bot-api
48KB
869 行
Awesome Bot
一个易于构建您自己的 Telegram 机器人的框架。更多信息 这里。官方 API 这里。
此框架基于 telegram-bot
库与 API 通信。
用法
此框架可在 crates.io
获取。只需将其添加到您的 Cargo.toml
依赖项中
[dependencies]
awesome-bot = "0.1.0"
示例
以下是一个简单示例(从 examples/simple.rs
下载)。
extern crate awesome_bot;
use awesome_bot::*;
fn echohandler(bot: &AwesomeBot, msg: &Message, _: String, args: Vec<String>) {
// We can access safely because the pattern match have that argument mandatory
let toecho = &args[1];
let phrase = format!("Echoed: {}", toecho);
// Send the text in a beauty way :)
let sent = bot.answer(msg).text(&phrase).end();
println!("{:?}", sent);
}
fn main() {
// Create the Awesome Bot (You need TELEGRAM_BOT_TOKEN environment with the token)
let mut bot = AwesomeBot::from_env("TELEGRAM_BOT_TOKEN");
// Add a command, this will add the routing to that function.
bot.command("echo (.+)", echohandler);
// Start the bot with getUpdates
let res = bot.simple_start();
if let Err(e) = res {
println!("An error occurred: {}", e);
}
}
在 examples
文件夹中还有更多代码
examples/simple.rs
:一个回声示例,非常简单。examples/complete.rs
:一个具有所有(我认为,可能不是所有,但几乎是所有)awesome-bot
功能的示例,这是一个很大的示例 ;-)
注意:要执行具有所有功能的 examples/complete.rs
,您需要添加一些测试文件,这些文件将是机器人将发送的,这些文件应包括:files/test.{jpg, mp3, mp4, pdf, webp}
用于图片、音频/语音、视频、文档和贴纸
合作
欢迎所有帮助!打开问题、代码或文档的 PR、提出建议、告诉我我的 Rust 不好(为什么),你想要什么 :)
您可以通过 telegram 联系我。
许可
许可如下
- Apache 许可证 2.0 版,(LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
- 啤酒软件许可(LICENSE-BEERATE)或 https://goo.gl/GGzTvj
任选其一。
贡献
除非你明确表示否则,你根据Apache-2.0许可证定义的任何有意提交以包含在作品中的贡献,将按上述方式三重许可,不附加任何额外条款或条件。
依赖项
~10MB
~224K SLoC