14 个版本 (7 个破坏性版本)
0.8.0 | 2022年1月9日 |
---|---|
0.7.0 | 2021年11月29日 |
0.6.1 | 2021年7月9日 |
0.5.1 | 2021年3月9日 |
0.1.0 | 2020年12月21日 |
#2 in #harmony
每月 39 次下载
用于 ilo-toki
105KB
2.5K SLoC
Rust 实现的 Harmony 聊天协议。目前实现了一个轻量级客户端和一个客户端 API(由 hrpc 驱动),以及通过 hrpc-build 自动生成的 API。
要求
- 最新稳定版的 Rust 和 Cargo。
- 如果你使用 Nix,可以使用
nix-shell
(或者如果你使用 flakes,则使用nix develop
)。 - 否则,你需要安装 protobuf 并确保
protoc
在你的PATH
环境变量中。- 如果
build.rs
失败,请确保设置PROTOC
环境变量为你的protoc
可执行文件- 并将
PROTOC_INCLUDE
环境变量设置为 protobuf 包含文件的所在位置,最可能是/usr/share/include
。
- 如果
示例
echo_bot
:展示了在一个公会中运行的简单消息回声机器人。它会在其他人发布消息时重新发布消息。message_log
:展示了在一个公会中运行的简单消息日志机器人。它会在有人发布消息时将消息记录到控制台。cmd_bot
:一个更复杂的机器人,可以响应“命令”。这些命令是- r!ping:回复“Pong!用时 X 秒。”
- r!hello:回复“你好,用户名!”
- r!uptime:回复“运行了 X 秒。”
- 机器人运行说明
- 使用
GUILD_INVITE=invite cargo run --example example_name
运行机器人。 - 确保机器人有必要的权限来查看频道/发送消息等。
- 使用
库功能
- 默认情况下,仅生成所有服务的基本公共 API。您可以通过启用以下列出的功能来根据需要自定义库
- 启用
client_native
功能以使用hyper
并在本地平台工作的轻量级客户端实现。 - 启用
client_web
功能以实现适用于 Web 平台的轻量级客户端实现(WASM)。 - 启用
client_backoff
功能以在速率限制的请求上启用请求重试。 - 启用
gen_client
功能以生成客户端服务代码。 - 启用
gen_server
功能以生成服务器服务代码。 - (默认)启用
gen_chat
功能以生成聊天服务代码。 - (默认)启用
gen_auth
功能以生成认证服务代码。 - (默认)启用
gen_voice
功能以生成语音服务代码。 - (默认)启用
gen_mediaproxy
功能以生成媒体代理服务代码。 - (默认)启用
gen_harmonytypes
功能以生成通用 Harmony 类型。 - (默认)启用
gen_sync
功能以生成同步服务代码。 - (默认)启用
gen_emote
功能以生成表情服务代码。 - (默认)启用
gen_profile
功能以生成个人资料服务代码。 - (默认)启用
gen_batch
功能以生成批量服务代码。
- 启用
MSRV
最低支持 Rust 版本:当前稳定版。
更改 MSRV 不被视为 semver 破坏性更改。
依赖项
~4–19MB
~285K SLoC