Skip to content

Commit 4308a0c

Browse files
committed
docs: refine configuration instruction
1 parent a99ea8d commit 4308a0c

File tree

1 file changed

+50
-12
lines changed

1 file changed

+50
-12
lines changed

README.md

Lines changed: 50 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,35 @@
1010

1111
运行前请先启动 PMHQ,并确保它的 WebSocket 服务可以访问。默认情况下,Yogurt 会连接 `ws://localhost:13000/ws`。随后启动 Yogurt;如果当前工作目录下还没有 `config.json`,程序会先生成一份默认配置文件,等待你修改后再继续。
1212

13+
Yogurt 启动后会先检查当前 PMHQ 是否已经登录;如果已经登录且账号正好是这个 QQ 号,就会直接进入初始化;如果已经登录但账号不是这个 QQ 号,则会直接报错,避免误用错误账号;如果当前尚未登录,则会检查 PMHQ 的快速登录列表,在列表中找到该 QQ 号时优先尝试快速登录,失败后再回落到二维码登录。不填写 `quickLoginUin` 时,Yogurt 会直接按照当前 PMHQ 状态继续,必要时进入二维码登录。登录成功后,Yogurt 会继续执行初始化,并开始对外提供 Milky 接口。
14+
15+
Yogurt 启动并登录完成后,HTTP API 的地址是 `http://<host>:<port>/api`,事件接口的地址是 `http://<host>:<port>/event`。如果设置了 `accessToken`,调用方需要使用同一个令牌完成认证;在 HTTP 场景下,通常使用 `Authorization: Bearer <token>` 请求头即可。
16+
17+
## 配置
18+
1319
当前版本面向 PC 协议使用,内置固定使用 `Linux` 协议信息,不需要再额外配置 PC 协议版本,也不需要签名服务。最常见的配置如下:
1420

15-
```json
21+
```jsonc
1622
{
17-
"pmhqUrl": "ws://127.0.0.1:13000/ws",
18-
"quickLoginUin": 123456789,
19-
"preloadContacts": false,
23+
"signApiUrl": "", // 留空即可
24+
"pmhqUrl": "ws://localhost:13000/ws",
25+
"quickLoginUin": null,
26+
"protocol": {
27+
"os": "Linux",
28+
"version": "fetched" // 保持默认值即可,Yogurt 会在登录时自动从 PMHQ 获取协议版本信息
29+
},
30+
"androidCredentials": { // 留空即可,Yogurt-PMHQ 不使用 Android 协议
31+
"uin": 0,
32+
"password": ""
33+
},
34+
"androidUseLegacySign": false, // 留空即可,Yogurt-PMHQ 不使用 Android 协议
2035
"reportSelfMessage": true,
36+
"preloadContacts": false,
2137
"transformIncomingMFaceToImage": false,
2238
"httpConfig": {
2339
"host": "127.0.0.1",
24-
"port": 3000,
25-
"accessToken": "change-me",
40+
"port": 30001,
41+
"accessToken": "",
2642
"corsOrigins": []
2743
},
2844
"webhookConfig": {
@@ -37,17 +53,39 @@
3753
}
3854
```
3955

40-
其中,`pmhqUrl` 表示 PMHQ 的 WebSocket 地址;如果 PMHQ 运行在其他主机或使用了不同端口,只需要修改这一项即可。`quickLoginUin` 是一个可选项,用于指定优先尝试快速登录的 QQ 号。Yogurt 启动后会先检查当前 PMHQ 是否已经登录;如果已经登录且账号正好是这个 QQ 号,就会直接进入初始化;如果已经登录但账号不是这个 QQ 号,则会直接报错,避免误用错误账号;如果当前尚未登录,则会检查 PMHQ 的快速登录列表,在列表中找到该 QQ 号时优先尝试快速登录,失败后再回落到二维码登录。不填写 `quickLoginUin` 时,Yogurt 会直接按照当前 PMHQ 状态继续,必要时进入二维码登录。
56+
### `pmhqUrl`
4157

42-
`preloadContacts` 用于控制是否在登录完成后预加载联系人列表。关闭时启动更快;开启后会预先拉取好友、群和部分成员信息,能改善部分接口在刚启动时的表现,但也会增加启动时间和内存占用。`reportSelfMessage` 表示是否上报自己发送的消息,`transformIncomingMFaceToImage` 表示是否将收到的市场表情转换成普通图片段
58+
表示 PMHQ 的 WebSocket 地址;如果 PMHQ 运行在其他主机或使用了不同端口,只需要修改这一项即可
4359

44-
`httpConfig``webhookConfig` 用于配置 Yogurt 对外提供的 Milky 服务。`httpConfig.host``httpConfig.port` 决定监听地址,默认是 `127.0.0.1:3000`。如果 `httpConfig.accessToken` 为空,任何能够访问该地址的客户端都可以直接调用 API;如果需要在局域网或公网环境下使用,建议务必设置一个访问令牌。`httpConfig.corsOrigins` 留空时表示允许所有来源跨域访问。`webhookConfig.url` 可以填写一个或多个事件推送地址,`webhookConfig.accessToken` 则会在推送时一并携带。
60+
### `quickLoginUin`
4561

46-
`logging.coreLogLevel` 用于控制 Yogurt 和 `acidify-core` 的日志等级,可选值有 `VERBOSE``DEBUG``INFO``WARN``ERROR``logging.ansiLevel` 用于控制终端颜色输出等级,可选值有 `NONE``ANSI16``ANSI256``TRUECOLOR``skipSecurityCheck` 默认为 `false`;当你把服务绑定到 `0.0.0.0` 且没有设置访问令牌时,程序会给出一段安全提示,如果你明确知道自己在做什么,可以将其设为 `true` 跳过检查
62+
可选项,用于指定优先尝试快速登录的 QQ 号
4763

48-
登录时,Yogurt 会优先复用 PMHQ 当前已有的登录状态;如果没有可用的在线状态,则会按前述逻辑尝试快速登录,最后再进入二维码登录。二维码登录开始后,终端侧会收到二维码相关事件;如果你的接入层订阅了这些事件,就可以直接展示二维码图片或链接。登录成功后,Yogurt 会继续执行初始化,并开始对外提供 Milky 接口。
64+
### `preloadContacts`
4965

50-
Yogurt 启动并登录完成后,HTTP API 的地址是 `http://<host>:<port>/api`,事件接口的地址是 `http://<host>:<port>/event`。如果设置了 `accessToken`,调用方需要使用同一个令牌完成认证;在 HTTP 场景下,通常使用 `Authorization: Bearer <token>` 请求头即可。
66+
用于控制是否在登录完成后预加载联系人列表。关闭时启动更快;开启后会预先拉取好友、群和部分成员信息,能改善部分接口在刚启动时的表现,但也会增加启动时间和内存占用。
67+
68+
### `reportSelfMessage`
69+
70+
表示是否上报自己发送的消息。
71+
72+
### `transformIncomingMFaceToImage`
73+
74+
表示是否将收到的市场表情转换成普通图片段。
75+
76+
### `httpConfig``webhookConfig`
77+
78+
用于配置 Yogurt 对外提供的 Milky 服务,详见 [Milky 文档的“通信”部分](https://milky.ntqqrev.org/guide/communication)
79+
80+
- `httpConfig.host``httpConfig.port` 决定监听地址,默认是 `127.0.0.1:3000`
81+
- 如果 `httpConfig.accessToken` 为空,任何能够访问该地址的客户端都可以直接调用 API;如果需要在局域网或公网环境下使用,建议务必设置一个访问令牌。
82+
- `httpConfig.corsOrigins` 留空时表示允许所有来源跨域访问。
83+
- `webhookConfig.url` 可以填写一个或多个事件推送地址。
84+
- `webhookConfig.accessToken` 会在推送时携带在 `Authorization` 请求头中。
85+
86+
### 日志配置
87+
88+
[Yogurt 文档的“日志配置”部分](https://acidify.ntqqrev.org/yogurt/configuration#%E6%97%A5%E5%BF%97%E9%85%8D%E7%BD%AE)
5189

5290
## 支持平台
5391

0 commit comments

Comments
 (0)