6个版本 (重大变更)
0.6.0 | 2024年5月3日 |
---|---|
0.5.1 | 2023年11月18日 |
0.4.1 | 2022年10月14日 |
0.3.0 | 2021年5月5日 |
0.2.0 | 2020年7月20日 |
#211 in 网页编程
每月407次下载
在 7 个库中使用 (直接使用 3 个)
100KB
2.5K SLoC
grammers.rs
一套Rust库,用于与Telegram的API交互,因此得名 (tele)grammers.rs。
当前状态
它正常工作!高层接口正在慢慢成形,并且可以用来 构建真实项目,例如 RSS机器人。
有关库的外观的最新示例,请参阅 客户端示例文件夹。
有关更多文档,请参阅 https://docs.rs/grammers-client/。
库
以下库位于 lib/
以下,可用于以某种方式与Telegram交互
- grammers-client: 高层API。
- grammers-crypto: 与密码学相关的方法。
- grammers-mtproto: 移动传输协议的实现。
- grammers-mtsender: 与Telegram的网络连接。
- grammers-session: 客户端会话存储。
- grammers-tl-gen: 从TL定义生成Rust代码。
- grammers-tl-parser: 类型语言解析器。
- grammers-tl-types: 某个层生成的Rust类型。
二进制文件
以下辅助CLI工具位于 bin/
文件夹
- scrape-docs:爬取Telegram网站以获取原始API文档。
- tl-to-json:用于读取
.tl
并输出.json
的工具,相当于 Telegram的JSON模式。
安全
建议始终使用 cargo-crev 验证每个依赖项的可信度,包括这个依赖项。
据我所知,此代码尚未经过审计,因此如果您出于任何原因在该crate中使用的场合安全性至关重要,我强烈建议您至少审查 grammers-crypto
和 grammers-mtproto
的认证部分。我不是安全专家,尽管我足够信任自己的代码来使用它。
如果您知道有关此crate已发布的审计信息,请告诉我,以便我可以在此处链接它并审查发现的问题。
许可协议
此存储库中包含的所有库和二进制文件均受以下协议之一许可:
-
Apache License,版本2.0(LICENSE-APACHE 或 http://apache.ac.cn/licenses/LICENSE-2.0)
-
MIT许可协议(LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
贡献
感谢您考虑做出贡献!我将尽力对您的问题或pull请求提供快速、建设性的反馈。如果您认为我的行为在任何时候不可接受,请指出。我将尽量使讨论尽可能技术化。同样,我也不能容忍您对他人(包括我自己)的恶劣行为。
如果您没有时间 贡献代码,您可以通过 报告问题 或功能想法来做出贡献。请注意,每个新增功能都将增加我维护方面的负担,因此在提出建议时要小心。您的想法可能可以作为其自己的crate存在,作为 grammers的扩展 提供。
除非您明确表示,否则您提交的任何有意包含在作品中的贡献,根据Apache-2.0许可证定义,应双许可如上所述,不附加任何额外条款或条件。
lib.rs
:
此模块汇集所有代码生成子模块并协调它们,为它们提供正确的数据。
依赖项
~78KB