forked from mrhso/LilyWhiteBot
-
Notifications
You must be signed in to change notification settings - Fork 8
/
config.example.yml
282 lines (241 loc) · 14.8 KB
/
config.example.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
#
# 机器人配置文件
#
# 请将本文件复制为 config.yml,并参照注释进行设置
#
IRC:
disabled: true # 如果需要 IRC 机器人,请设置为 false
bot:
server: irc.freenode.net
nick: "" # IRC 暱稱
userName: ""
realName: ""
channels: ["#channel1", "#channel2"] # 需要加入的頻道
autoRejoin: true
secure: true
port: 6697
floodProtection: true
floodProtectionDelay: 300
sasl: false # 如果開啟 SASL,那麼需要正確設定前面的 userName 和下面的 sasl_password
# 如果有 Cloak 也需要正确输入这两个参数。
sasl_password: ""
encoding: UTF-8
options:
maxLines: 4 # 一次性容許最多四行訊息(包括因為太長而被迫分割的)
Telegram:
disabled: true # 如果需要 Telegram 机器人,请设置为 false
bot:
name: "" # Bot 的 username
token: "" # BotFather 給你的 Token,類似「123456789:q234fipjfjaewkflASDFASjaslkdf」
timeout: 30 # 報超時的秒數
limit: 100 # 限定檢索的消息數
# 如果使用中国国内网络,无法直连 Telegram 服务器,可通过设置 proxy(仅支持 HTTPS 代理)来翻墙
# 或者自行在国外架设 Bot API(api.telegram.org)反向代理服务器然后修改 apiRoot 的值
proxy:
host: "" # HTTPS 代理服务器地址、端口
port: 0
# 使用 Webhook 模式,参见 https://core.telegram.org/bots/webhooks
webhook:
port: 0 # Webhook 端口,为 0 时不启用 Webhook
path: "" # Webhook 路径
url: "" # Webhook 最终的完整 URL,可被外部访问,用于调用 Telegram 接口自动设置网址
ssl:
certPath: "" # SSL 证书,为空时使用 HTTP 协议
keyPath: "" # SSL 密钥
caPath: "" # 如使用自签名证书,CA 证书路径
apiRoot: "https://api.telegram.org" # 无特殊需要的话勿动
options:
nickStyle: username # 在其他群組中如何辨識使用者名稱:可取「username」(優先採用使用者名稱)、
# 「fullname」(優先採用全名)、「firstname」(優先採用 First Name)
# QQ 注意事项:需要和[酷Q](https://cqp.cc)与[CoolQ HTTP API插件](https://cqhttp.cc)配合使用!
QQ:
disabled: true # 如果需要 QQ 机器人,请设置为 false
bot:
qq: "10000" # 机器人的 QQ 号
# 以下参数用于与 CoolQ HTTP API 插件连接,需要和其设置一致
apiRoot: "http://127.0.0.1:5700/"
accessToken: "123"
secret: "abc"
listen: # 用于接收消息,需要同步修改 CoolQ HTTP API 插件中 post_url 参数
host: "127.0.0.1" # 使用Docker时请设置成0.0.0.0
port: 11234
options:
selfCensorship: true # 根据 badwords.yml 文件过滤敏感词
ignoreCash: true # 如果消息疑似口令红包则忽略、屏蔽消息(注意程序无法区分口令红包和群友自行刷屏)
nickStyle: groupcard # 暱稱,可取「groupcard」(優先採用群名片)、「nick」(優先採用暱稱)、「qq」(只用 QQ 號)
showTitle: false # 轉發時顯示頭銜(被@者不會顯示)
CoolQPro: false # 如使用 CoolQ Pro,开启此参数后可直接发送图片(仅限使用 HTTP API 插件。另外 Air 版无效)
Discord:
disabled: true # 如果需要 Discord 机器人,请设置为 false
bot:
token: ""
options:
nickStyle: nickname # 可取「nickname」(使用者暱稱,僅在伺服器有效,否則仍用使用者名稱)、「username」(使用者名稱)、「id」(ID)
useProxyURL: false # 考虑到中国网络情况,若 https://cdn.discordapp.com 被屏蔽请改成 true(对应 https://media.discordapp.net)
# 系统日志
logging:
level: info # 日志等级:从详细到简单分别是 debug、info、warning、error,推荐用 info
logfile: "" # 日志文件名,如留空则只向屏幕输出
# 启用的插件(繁体字用户叫套件)
plugins:
- transport # 啟用互聯功能,不想禁止互聯的話請勿移除
- groupid-tg # 取得目前 Telegram 群組的 ID,
# 可在正式連接之前啟用該套件,然後在 Telegram 群中使用 /thisgroupid 取得ID
- ircquery # 允許查詢 IRC 的一些訊息
- irccommand # 允許向 IRC 發送一些命令(注意,不是 IRC 命令而是給頻道內機器人使用的命令)
- pia
# 各插件(套件)设置
transport:
# 說明:
# 1. 可以填任意個群組
# 2. 群組格式:
# irc/#頻道 例如 irc/#test
# telegram/-群组ID 例如 telegram/-12345678
# qq/群号 例如 qq/12345678
# discord/ID 例如 discord/123123123123
# 3. 如果需要,可以加入多個互聯體。例如将两个 QQ 分群连接到一起。
groups:
- ['irc/#test', 'telegram/-12345678', 'qq/12345678']
# 可以在同一组内增加软件相同、群号不同的群,例如
# - ['irc/#test', 'telegram/-12345678', 'qq/12345678', 'qq/87654321']
# 另外如有多组互联需求,可继续增加互联关系
# 如果希望把同一軟體的多個群組連接到一起,可為不同的群組設置不同的別名,
# 這樣互聯機器人在轉發訊息時會採用自訂群組名,以免混淆
aliases:
"qq/87665432": "分部"
"qq/12345678": ["简称", "本群全称"]
# 如果需要设置单向转发/不转发,例如 Telegram 群不向 QQ 转发,请在下面设置
disables:
"telegram/-12345678": ["qq/12345678"]
options:
IRC:
notify:
join: false # 有人進入頻道是否在其他群發出提醒
rename: onlyactive # 有人更名的話是否在其他群組發出提醒,可取
# 「all」(所有人都提醒)、「onlyactive」(只有說過話的人更名才提醒)、
# 「none」(不提醒)
leave: onlyactive # 有人離開頻道的話是否在其他群組提醒,也可取 all/onlyactive/none
timeBeforeLeave: 600 # 如果 leave 為 onlyactive 的話:最後一次說話後多長時間內離開才會提醒
topic: true # 頻道更換 Topic 時是否提醒
# 這裡可以設定機器人在 IRC 頻道中使用顏色。在啟用顏色功能之前,IRC 頻道的管理員需要解除頻道的 +c 模式,即
# /msg ChanServ SET #頻道 MLOCK -c
# 轉發機器人的訊息有以下三種格式:
# <T> [nick] message
# <T> [nick] Re replyto 「repliedmessage」: message
# <T> [nick] Fwd fwdfrom: message
# (兩群互聯不會出現用於標識軟體的「<T>」)
# 可用顏色:white、black、navy、green、red、brown、purple、
# olive、yellow、lightgreen、teal、cyan、blue、pink、gray、silver
colorize:
enabled: true # 是否允許在 IRC 頻道中使用顏色
broadcast: green # < 整行通知的顏色 >
client: navy # 用於標記用戶端「<T>」的顏色
nick: colorful # nick 的顏色。除標準顏色外,亦可設為 colorful
replyto: brown # Re replyto 的顏色
repliedmessage: olive # 被 Re 的訊息的顏色
fwdfrom: cyan # Fwd fwdfrom 的顏色
linesplit: silver # 行分隔符的顏色
# 如果 nick 為 colorful,則從這些顏色中挑選。為了使顏色分佈均勻,建議使顏色數量為素數
nickcolors: ["green", "blue", "purple", "olive", "pink", "teal", "red"]
# 互联控制相关
receiveCommands: true # 是否允許 Telegram 和 QQ 使用 irccommand
allowQuery: true # 是否允許其他群組查詢 IRC 頻道資訊
Telegram:
notify:
join: true
leave: true
pin: true
forwardCommands: true # 如果有人使用 Telegram 命令亦轉發到其他群組(但由於 Telegram 設定的原因,Bot 無法看到命令結果)
# 下面是其他群里面互联机器人的名称。在转发这些机器人的消息时,程序会尝试从消息中提取出真正的昵称,
# 而不是显示机器人的名称。参数“[]”、“<>”指真正发消息者昵称两边的括号样式,目前只支持这两种括号。
forwardBots:
XiaoT_bot: "[]"
zhmrtbot: "[]"
Sakura_fwdbot: "[]"
orgdigbot: "[]"
sauketubot: "[]"
QQ:
notify:
join: true # 有人加入 QQ 群的話是否提醒其他群組
leave: true # 有人離開 QQ 群的話是否提醒其他群組
setadmin: true # 是否提醒設定/取消管理員
# sysmessage: true # 是否提醒系統消息,包括禁言和全體禁言 -- 酷Q收不到此类消息,移除
notice: true # 发送群公告时是否提醒其他群组
# 其他设置
paeeye: # 留空或省略則禁用本功能
prepend: "//" # 在訊息前面使用「//」會阻止此條訊息向其他群組轉發。
inline: "--no-relay" # 在訊息中間使用「--no-relay」會阻止此條訊息向其他群組轉發。
# 自定义消息样式(使用 https://www.npmjs.com/package/string-format 库实现)
# 字段一览:
# 消息信息:from、to、nick、text、client_short、client_full、command、param
# 回复类:reply_nick、reply_text、reply_user
# 转发类:forward_nick、forward_user
# 注意:此处的 nick 并不一定是昵称,具体内容受前面各聊天软件机器人的 nickStyle 属性控制。例如 QQ.options.nickStyle 为 qq 的话,在转发 QQ 群消息时,nick 也会变成 QQ 号。
messageStyle:
simple:
# 两群互联样式
message: '[{nick}] {text}'
reply: '[{nick}] Re {reply_nick} 「{reply_text}」: {text}'
forward: '[{nick}] Fwd {forward_nick}: {text}'
action: '* {nick} {text}'
notice: '< {text} >'
complex:
# 多群互联样式
# 备注:client_short 为空串时会使用 simple 的样式
message: '[{client_short} - {nick}] {text}'
reply: '[{client_short} - {nick}] Re {reply_nick} 「{reply_text}」: {text}'
forward: '[{client_short} - {nick}] Fwd {forward_nick}: {text}'
action: '* {client_short} - {nick} {text}'
notice: '< {client_full}: {text} >'
# 本节用于处理图片文件
#
# 支持以下几种处理方式:
#
# 以下三个是公共图床,仅支持图片,其他类型文件会被忽略:
# vim-cn:将图片上传到 img.vim-cn.com。
# imgur:将图片上传到 imgur.com。
# sm.ms:将图片上传到 sm.ms 图床中。
#
# 以下三个需自建服务器:
# self:将文件保存在自己的服务器中。请确保您的服务器设置正确,URL 能够正常访问,否则将无法发送图片。
# linx:将文件上传到一个 linx(https://github.com/andreimarcu/linx-server)服务器中,支持所有文件格式。
# uguu: 将文件上传到一个 uguu(https://github.com/nokonoko/Uguu)服务器中。
#
# 特别提醒:
# 1. vim-cn、sm.ms 为个人图床,资源有限。如果您的聊天群水量很大,请选择其他图床或自建服务器。
# 2. 如使用外部图床,建议您设置自己专用的 User-Agent。
# 3. 自建服务器请使用 80 或 443 端口(国内服务器需备案),否则图片可能无法正常转发。
#
# 另外,如果使用酷 Q 的话,您需要定期自行清理酷 Q 的缓存!
servemedia:
type: "" # 文件处理方式:省略/留空/none、self、vim-cn、imgur、sm.ms、linx、uguu
# type为self时有效
cachePath: "" # 缓存存放位置
serveUrl: "" # URL 的前缀,通常需要以斜线结尾
# type为linx时有效
linxApiUrl: "" # linx API 地址(例如 https://www.xxx.com/upload/),通常以斜线结尾
# type为uguu时有效
uguuApiUrl: "" # 请以 /api.php?d=upload-tool 结尾
# type为imgur时有效
imgur:
apiUrl: "https://api.imgur.com/3/"
clientId: "" # 從 imgur 申請到的 client_id
# 其他设置
sizeLimit: 4096 # 檔案最大大小,單位 KiB。0 表示不限制。限制僅對 Telegram 有效
timeout: 3000 # 上传超时时间,单位毫秒,type 为 vim-cn、imgur 等外部图床时有效
userAgent: "" # 访问外部图床时的 User-Agent,如留空则使用默认的 LilyWhiteBot/版本号
ircquery:
disables: # 不要在這些群組使用 ircquery 功能
- "qq/12345678" # 軟體名(qq/irc/telegram)要寫全而且小寫……
# 如果是只希望在特定群組使用,用這個
# enables:
# - "qq/12345678"
prefix: "irc" # 如果使用,命令會變成 /irctopic、/ircnames 等
irccommand:
echo: true # 是否在目前的用戶端顯示命令已傳送
disables: # 不要在這些群組使用 ircquery 功能
- "qq/12345678" # 軟體名(qq/irc/telegram)要寫全而且小寫……
# 如果是只希望在特定群組使用,用這個
# enables:
# - "qq/12345678"
prefix: "irc" # 如果使用,命令會變成 /irctopic、/ircnames 等