1 个不稳定版本
0.1.0 | 2022年1月13日 |
---|
#4 in #sticker
45KB
1K SLoC
Telegram 媒体机器人
使用 Rust 编写的 Telegram 机器人,用于将不同的媒体(目前仅支持贴纸)进行别名处理。
工作原理
最初,没有指定任何别名。可以使用 /add
命令添加别名,该命令启动添加过程
之后,您可以在消息中使用指定的别名(用冒号括起来)。机器人将发送相关媒体到聊天
使用方法
机器人目前正在 http://t.me/textmedia_bot 运行。
- 将其添加到聊天室(或开始私聊对话)
- (如果用于聊天) 如果您希望所有消息在聊天中可见,请授予管理员权限。
- 根据
/start
和/help
使用它
如何自行运行它
要求
- Rust/Cargo 1.56+
- Redis 6.2+
较旧版本可能也可以工作,但尚未经过测试。
启动
您可以使用 cargo install
或手动克隆到仓库,然后在机器上安装或在文件夹中构建和运行。
- 启动 Redis 服务器
- 在
TELOXIDE_TOKEN
环境变量中指定机器人 API 令牌
使用 cargo 安装
- 输入
cargo install --git https://github.com/bragov4ik/tg-media-bot.git
- 使用
tg-media-bot
命令运行机器人 (如果 cargo 安装目录在您的PATH
中)
手动安装
- 将仓库克隆到任何文件夹
- 在文件夹内部使用
cargo install
- 写入
tg-media-bot
以运行 (如果不起作用,请检查 cargo 安装位置是否在您的PATH
中)
手动便携式启动
- 将仓库克隆到任何文件夹
- 输入
cargo run --release
以构建和运行项目
参数
有一个可选参数 - Redis地址。您只需要指定地址本身,不需要redis://
前缀。
用法示例:tg-media-bot 127.0.0.1
问题/错误
如果发现与代码相关的任何错误,请创建一个带有其描述的问题。
计划工作/特性
按照重要性排序(越高越优先)
- 更自动化的部署
- 添加适当的(单元)测试
- 添加对任何媒体的支持
- 行内搜索
- 更优雅地处理常见命令的方式
- 标记符号指定(冒号可能引起冲突)然而目前可以通过不给机器人管理员权限来避免,这样它看不到所有消息
- 解决TODOs (不是关键,但更好的实践)
依赖关系
~15–29MB
~460K SLoC