#group #server #chat #following #pgp #messaging #rooms

bin+lib wicrs_server

基于服务器/频道的聊天处理后台

25个版本 (10个破坏性版本)

0.13.1 2021年6月10日
0.12.0 2021年5月3日
0.8.0 2021年3月24日
0.3.3 2020年12月23日

#607 in HTTP服务器

每月50次下载
用于 wicrs_api

GPL-3.0 许可证

165KB
3.5K SLoC

WICRS服务器

wic.rs crates.io docs.rs Discord Matrix

用Rust编写的用于处理聊天室和消息组的服务器。

构建

按照这些说明安装Rust。然后克隆git仓库,然后构建

git clone https://github.com/wicrs/server.git wicrs_server
cd wicrs_server
cargo build # to build the release version run cargo build --release

设置

首先,您需要按照此处的说明创建一个GitHub OAuth应用程序,确保将回调URL设置为 $HOSTNAME:$PORT/api/v2/auth/github,将 $PORT 替换为您在配置中选择的端口,将 $HOSTNAME 替换为您访问WICRS API时将导航到的地址。

要运行服务器,您首先需要在服务器的当前工作目录中创建一个名为 config.json 的配置文件,该目录应保留用于服务器。以下是一个示例,说明 config.json 的内容

{
    "key_server": "https://keys.openpgp.org",
    "address": "127.0.0.1:8080",
    "show_version": false,
    "key_id": "WICRS Server <[email protected]>"
}

密钥服务器对应于SKS密钥服务器的URL。 address应设置为服务器要监听的本地地址,例如,您可以使用127.0.0.1:8080。变量show_version决定服务器在客户端访问HTTP根目录(/)时是否告诉客户端其版本。变量key_id可选地预配置了服务器生成的PGP密钥的ID(要使用自定义PGP密钥,请确保它已签名且未设置密码保护,然后将其作为ASCII盔甲导出,并将其放入文件data/secret_key.asc)。

请注意,服务器应用程序需要能够读取./config.json,并且必须能够读取和写入./data,否则大多数请求将失败。

完成此操作后,通过执行cargo run或如果您位于项目git目录中,则执行cargo run --release来运行服务器。如果您不在项目的git目录中,则需要将可执行文件放入所需的运行目录(其中包含config.json文件)并运行./wicrs_server。否则,您需要将其放在您的路径中,在这种情况下,您只需在选择的运行目录中运行wicrs_server

开发和贡献

有关开发和贡献的信息,请阅读贡献指南

版本控制

本项目遵循语义版本控制。然而,直到1.0.0版本,以下规则适用

  • 任何API/ABI破坏性更改将导致小版本号增加。
  • API扩展功能导致修补版本号增加。
  • 非破坏性错误修复和性能改进导致修补版本号增加。

依赖项

~41–58MB
~1M SLoC