1
0
mirror of https://github.com/Mrs4s/go-cqhttp.git synced 2025-05-05 03:23:49 +08:00

docs: config

This commit is contained in:
wdvxdr 2021-04-05 23:15:35 +08:00
parent 4eacf96a17
commit 6083fa62b3
No known key found for this signature in database
GPG Key ID: 55FF1414A69CEBA6
2 changed files with 136 additions and 91 deletions

View File

@ -1,97 +1,137 @@
# 配置 # 配置
go-cqhttp 包含 `config.hjson``device.json` 两个配置文件, 其中 `config.json` 为运行配置 `device.json` 为虚拟设备信息. go-cqhttp 包含 `config.yml``device.json` 两个配置文件, 其中 `config.yml` 为运行配置 `device.json` 为虚拟设备信息.
## 从原CQHTTP导入配置
go-cqhttp 支持导入CQHTTP的配置文件, 具体步骤为:
1. 找到CQHTTP原配置文件 `{CQ工作目录}/app/io.github.richardchien.coolqhttpapi/config/{qq号}.json`
2. 将文件复制到go-cqhttp根目录并重命名为 `cqhttp.json`
3. 重启go-cqhttp后将自动导入配置
## 配置信息 ## 配置信息
go-cqhttp 的配置文件采用 YAML , 在使用之前希望你能了解 YAML 的语法([教程](https://www.runoob.com/w3cnote/yaml-intro.html))
默认生成的配置文件如下所示: 默认生成的配置文件如下所示:
````json ````yaml
{ # go-cqhttp 默认配置文件
"uin": 0,
"password": "", account: # 账号相关
"encrypt_password": false, uin: 1233456 # QQ账号
"password_encrypted": "", password: '' # 密码为空时使用扫码登录
"enable_db": true, encrypt: false # 是否开启密码加密
"enable_self_message": false, relogin: # 重连设置
"access_token": "", disabled: false
"relogin": { delay: 3 # 重连延迟, 单位秒
"enabled": true, interval: 0 # 重连间隔
"relogin_delay": 3, max-times: 0 # 最大重连次数, 0为无限制
"max_relogin_times": 0
}, # 是否使用服务器下发的新地址进行重连
"_rate_limit": { # 注意, 此设置可能导致在海外服务器上连接情况更差
"enabled": false, use-sso-address: true
"frequency": 1,
"bucket_size": 1 heartbeat:
}, disabled: false # 是否开启心跳事件上报
"post_message_format": "string", # 心跳频率, 单位秒
"ignore_invalid_cqcode": false, # -1 为关闭心跳
"force_fragmented": true, interval: 5
"heartbeat_interval": 5,
"use_sso_address": false, message:
"http_config": { # 上报数据类型
"enabled": true, # 可选: string,array
"host": "0.0.0.0", post-format: string
"port": 5700, # 是否忽略无效的CQ码, 如果为假将原样发送
"timeout": 5, ignore-invalid-cqcode: false
"post_urls": { # 是否强制分片发送消息
"url:port": "secret" # 分片发送将会带来更快的速度
} # 但是兼容性会有些问题
}, force-fragment: false
"ws_config": { # 是否将url分片发送
"enabled": true, fix-url: false
"host": "0.0.0.0", # 下载图片等请求网络代理
"port": 6700 proxy-rewrite: ''
}, # 是否上报自身消息
"ws_reverse_servers": [ report-self-message: false
{
"enabled": false, output:
"reverse_url": "ws://you_websocket_universal.server", # 日志等级 trace,debug,info,warn,error日志等级 trace,debug,info,warn,error
"reverse_api_url": "ws://you_websocket_api.server", log-level: warn
"reverse_event_url": "ws://you_websocket_event.server", # 是否启用 DEBUG
"reverse_reconnect_interval": 3000 debug: false # 开启调试模式
}
] # 默认中间件锚点
} default-middlewares: &default
# 访问密钥, 强烈推荐在公网的服务器设置
access-token: ''
# 事件过滤器文件目录
filter: ''
# API限速设置
# 该设置为全局生效
# 原 cqhttp 虽然启用了 rate_limit 后缀, 但是基本没插件适配
# 目前该限速设置为令牌桶算法, 请参考:
# https://baike.baidu.com/item/%E4%BB%A4%E7%89%8C%E6%A1%B6%E7%AE%97%E6%B3%95/6597000?fr=aladdin
rate-limit:
enabled: false # 是否启用限速
frequency: 1 # 令牌回复频率, 单位秒
bucket: 1 # 令牌桶大小
servers:
# HTTP 通信设置
- http:
# 是否关闭正向HTTP服务器
disabled: false
# 服务端监听地址
host: 127.0.0.1
# 服务端监听端口
port: 5700
# 反向HTTP超时时间, 单位秒
# 最小值为5小于5将会忽略本项设置
timeout: 5
middlewares:
<<: *default # 引用默认中间件
# 反向HTTP POST地址列表
post:
#- url: '' # 地址
# secret: '' # 密钥
#- url: 127.0.0.1:5701 # 地址
# secret: '' # 密钥
# 正向WS设置
- ws:
# 是否禁用正向WS服务器
disabled: true
# 正向WS服务器监听地址
host: 127.0.0.1
# 正向WS服务器监听端口
port: 6700
middlewares:
<<: *default # 引用默认中间件
- ws-reverse:
# 是否禁用当前反向WS服务
disabled: true
# 反向WS Universal 地址
# 注意 设置了此项地址后下面两项将会被忽略
universal: ws://your_websocket_universal.server
# 反向WS API 地址
api: ws://your_websocket_api.server
# 反向WS Event 地址
event: ws://your_websocket_event.server
# 重连间隔 单位毫秒
reconnect-interval: 3000
middlewares:
<<: *default # 引用默认中间件
# 可添加更多
#- ws-reverse:
#- ws:
#- http:
database: # 数据库相关设置
leveldb:
# 是否启用内置leveldb数据库
# 启用将会增加10-20MB的内存占用和一定的磁盘空间
# 关闭将无法使用 撤回 回复 get_msg 等上下文相关功能
enable: true
```` ````
| 字段 | 类型 | 说明 |
| --------------------- | -------- | ---------------------------------------------------------------------------------------- |
| uin | int64 | 登录用QQ号 |
| password | string | 登录用密码 |
| encrypt_password | bool | 是否对密码进行加密. |
| password_encrypted | string | 加密后的密码(请勿修改) |
| enable_db | bool | 是否开启内置数据库, 关闭后将无法使用 **回复/撤回** 等上下文相关接口 |
| enable_self_message | bool | 是否启用 `message_sent` 事件 |
| access_token | string | 同CQHTTP的 `access_token` 用于身份验证 |
| relogin | bool | 是否自动重新登录 |
| relogin_delay | int | 重登录延时(秒) |
| max_relogin_times | uint | 最大重登录次数若0则不设置上限 |
| _rate_limit | bool | 是否启用API调用限速 |
| frequency | float64 | 1s内能调用API的次数 |
| bucket_size | int | 令牌桶的大小默认为1修改此值可允许一定程度内连续调用api |
| post_message_format | string | 上报信息类型 |
| ignore_invalid_cqcode | bool | 是否忽略错误的CQ码 |
| force_fragmented | bool | 是否强制分片发送群长消息 |
| fix_url | bool | 是否对链接的发送进行预处理, 可缓解链接信息被风控导致无法发送的情况, 但可能影响客户端着色(不影响内容)|
| use_sso_address | bool | 是否使用服务器下发的地址 |
| heartbeat_interval | int64 | 心跳间隔时间单位秒。小于0则关闭心跳等于0使用默认值(5秒) |
| http_config | object | HTTP API配置 |
| ws_config | object | Websocket API 配置 |
| ws_reverse_servers | object[] | 反向 Websocket API 配置 |
| log_level | string | 指定日志收集级别,将收集的日志单独存放到固定文件中,便于查看日志线索 当前支持 warn,error |
> 注: 开启密码加密后程序将在每次启动时要求输入解密密钥, 密钥错误会导致登录时提示密码错误. > 注: 开启密码加密后程序将在每次启动时要求输入解密密钥, 密钥错误会导致登录时提示密码错误.
> 解密后密码将储存在内存中,用于自动重连等功能. 所以此加密并不能防止内存读取. > 解密后密码的哈希将储存在内存中,用于自动重连等功能. 所以此加密并不能防止内存读取.
> 解密密钥在使用完成后并不会留存在内存中, 所以可用相对简单的字符串作为密钥 > 解密密钥在使用完成后并不会留存在内存中, 所以可用相对简单的字符串作为密钥
> 注2: 分片发送为原酷Q发送长消息的老方案, 发送速度更优/兼容性更好,但在有发言频率限制的群里,可能无法发送。关闭后将优先使用新方案, 能发送更长的消息, 但发送速度更慢,在部分老客户端将无法解析. > 注2: 分片发送为原酷Q发送长消息的老方案, 发送速度更优/兼容性更好,但在有发言频率限制的群里,可能无法发送。关闭后将优先使用新方案, 能发送更长的消息, 但发送速度更慢,在部分老客户端将无法解析.

View File

@ -5,7 +5,7 @@ account: # 账号相关
password: '' # 密码为空时使用扫码登录 password: '' # 密码为空时使用扫码登录
encrypt: false # 是否开启密码加密 encrypt: false # 是否开启密码加密
relogin: # 重连设置 relogin: # 重连设置
disable: false disabled: false
delay: 3 # 重连延迟, 单位秒 delay: 3 # 重连延迟, 单位秒
interval: 0 # 重连间隔 interval: 0 # 重连间隔
max-times: 0 # 最大重连次数, 0为无限制 max-times: 0 # 最大重连次数, 0为无限制
@ -43,6 +43,7 @@ output:
# 是否启用 DEBUG # 是否启用 DEBUG
debug: false # 开启调试模式 debug: false # 开启调试模式
# 默认中间件锚点
default-middlewares: &default default-middlewares: &default
# 访问密钥, 强烈推荐在公网的服务器设置 # 访问密钥, 强烈推荐在公网的服务器设置
access-token: '' access-token: ''
@ -71,11 +72,11 @@ servers:
# 最小值为5小于5将会忽略本项设置 # 最小值为5小于5将会忽略本项设置
timeout: 5 timeout: 5
middlewares: middlewares:
<<: *default <<: *default # 引用默认中间件
# 反向HTTP POST地址列表 # 反向HTTP POST地址列表
post: post:
- url: '' # 地址 #- url: '' # 地址
secret: '' # 密钥 # secret: '' # 密钥
#- url: 127.0.0.1:5701 # 地址 #- url: 127.0.0.1:5701 # 地址
# secret: '' # 密钥 # secret: '' # 密钥
@ -88,7 +89,7 @@ servers:
# 正向WS服务器监听端口 # 正向WS服务器监听端口
port: 6700 port: 6700
middlewares: middlewares:
<<: *default <<: *default # 引用默认中间件
- ws-reverse: - ws-reverse:
# 是否禁用当前反向WS服务 # 是否禁用当前反向WS服务
@ -103,8 +104,12 @@ servers:
# 重连间隔 单位毫秒 # 重连间隔 单位毫秒
reconnect-interval: 3000 reconnect-interval: 3000
middlewares: middlewares:
<<: *default <<: *default # 引用默认中间件
#- ws-reverse: # 可添加多个
# 可添加更多
#- ws-reverse:
#- ws:
#- http:
database: # 数据库相关设置 database: # 数据库相关设置
leveldb: leveldb: