koishi-plugin-message-counter-qq 2.6.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json ADDED
@@ -0,0 +1,52 @@
1
+ {
2
+ "name": "koishi-plugin-message-counter-qq",
3
+ "description": "Koishi 的 QQ 群消息数量统计插件。生成发言排行榜。",
4
+ "version": "2.6.21",
5
+ "main": "lib/index.js",
6
+ "typings": "lib/index.d.ts",
7
+ "files": [
8
+ "lib",
9
+ "dist",
10
+ "assets"
11
+ ],
12
+ "koishi": {
13
+ "service": {
14
+ "required": [
15
+ "database",
16
+ "cron"
17
+ ],
18
+ "optional": [
19
+ "markdownToImage",
20
+ "puppeteer",
21
+ "canvas"
22
+ ]
23
+ }
24
+ },
25
+ "license": "MIT OR Apache-2.0",
26
+ "contributors": [
27
+ "Nawyjx <3373167460@qq.com>",
28
+ "shangxueink <1919892171@qq.com>"
29
+ ],
30
+ "keywords": [
31
+ "chatbot",
32
+ "koishi",
33
+ "plugin",
34
+ "message",
35
+ "counter",
36
+ "message-counter",
37
+ "rank",
38
+ "发言排行榜",
39
+ "排行榜",
40
+ "消息",
41
+ "记录",
42
+ "发言榜"
43
+ ],
44
+ "peerDependencies": {
45
+ "koishi": "^4.18.9"
46
+ },
47
+ "devDependencies": {
48
+ "koishi-plugin-cron": "^3.1.0",
49
+ "koishi-plugin-markdown-to-image-service": "^1.3.6",
50
+ "koishi-plugin-puppeteer": "^3.9.0"
51
+ }
52
+ }
package/readme.md ADDED
@@ -0,0 +1,118 @@
1
+ koishi-plugin-message-counter-qq
2
+ ========================
3
+
4
+ Koishi 的 QQ 群消息数量统计插件。发言排行榜。
5
+
6
+ ## 📝 注意事项
7
+
8
+ - 这是 QQ 群专用版本
9
+ - 只统计 `GROUP_MESSAGE_CREATE`,不统计 `GROUP_AT_MESSAGE_CREATE`
10
+ - 当前群排行榜为空时,通常表示今日暂无消息,或群主未允许机器人接收全量群消息
11
+ - 初始化需权限等级 3
12
+ - 依赖 database 与 cron 服务
13
+ - 生成图片时,需 puppeteer 提供 canvas 支持
14
+
15
+ ## 🔍 关键指令
16
+
17
+ ### `消息统计.查询 [指定用户]`
18
+
19
+ 查询指定用户的发言次数信息(次数[排名])。若不带任何选项,则显示所有时段的数据。
20
+
21
+ **选项:**
22
+
23
+ | 参数 | 说明 |
24
+ |------|------|
25
+ | `-d, --day` | 今日发言次数[排名] |
26
+ | `--yd, --yesterday` | 昨日发言次数[排名] |
27
+ | `-w, --week` | 本周发言次数[排名] |
28
+ | `-m, --month` | 本月发言次数[排名] |
29
+ | `-y, --year` | 今年发言次数[排名] |
30
+ | `-t, --total` | 总发言次数[排名] |
31
+ | `--dag` | 跨群今日发言次数[排名] |
32
+ | `--ydag` | 跨群昨日发言次数[排名] |
33
+ | `--wag` | 跨群本周发言次数[排名] |
34
+ | `--mag` | 跨群本月发言次数[排名] |
35
+ | `--yag` | 跨群本年发言次数[排名] |
36
+ | `-a, --across` | 跨群总发言次数[排名] |
37
+
38
+ ### `消息统计.排行榜 [显示的人数]`
39
+
40
+ 发言排行榜。默认为今日发言榜。
41
+
42
+ **选项:**
43
+
44
+ | 参数 | 说明 |
45
+ |------|------|
46
+ | `--yd, --yesterday` | 昨日发言排行榜 |
47
+ | `-w` | 本周发言排行榜 |
48
+ | `-m` | 本月发言排行榜 |
49
+ | `-y` | 今年发言排行榜 |
50
+ | `-t` | 总发言排行榜 |
51
+ | `--dag` | 跨群今日发言排行榜 |
52
+ | `--ydag` | 跨群昨日发言排行榜 |
53
+ | `--wag` | 跨群本周发言排行榜 |
54
+ | `--mag` | 跨群本月发言排行榜 |
55
+ | `--yag` | 跨群今年发言排行榜 |
56
+ | `--dragon` | 跨群总发言排行榜(圣龙王榜) |
57
+ | `--whites` | 白名单,只显示白名单用户 |
58
+ | `--blacks` | 黑名单,不显示黑名单用户 |
59
+
60
+ ### `消息统计.上传柱状条背景`
61
+
62
+ - 为自己上传一张自定义的水平柱状条背景图片
63
+ - 新图片会覆盖旧的图片。若上传失败,旧图片也会被删除
64
+ - 使用此指令时需附带图片
65
+
66
+ ### `消息统计.重载资源`
67
+
68
+ - 实时重载用户图标、柱状条背景和字体文件,使其更改即时生效(需要权限等级 2)
69
+
70
+ ### `消息统计.清理缓存`
71
+
72
+ - 清理过期的头像缓存文件,以释放磁盘空间(需要权限等级 3)
73
+ - 用户更换头像后,旧的头像缓存会变成“孤儿缓存”。此指令可以安全地移除它们。
74
+
75
+ ## 🚫 不支持的功能
76
+
77
+ - 不支持群排行榜,因为当前拿不到稳定的群名和群头像
78
+ - 不支持“向所有群聊推送”,请手动填写 `pushChannelIds`
79
+ - 不支持“抓龙王”禁言
80
+
81
+ ## 🎨 自定义水平柱状图样式
82
+
83
+ - 重载插件或使用 `消息统计.重载资源` 指令可使新增的文件立即生效。
84
+
85
+ ### 1. 用户图标
86
+
87
+ - 在 `data/messageCounter/icons` 文件夹下添加用户图标
88
+ - 文件名格式为 `用户ID.png`(例:`1234567890.png`)
89
+ - 支持多图标,文件名格式为 `用户ID-1.png`, `用户ID-2.png`
90
+
91
+ ### 2. 柱状条背景
92
+
93
+ - **推荐方式**:使用 `消息统计.上传柱状条背景` 指令
94
+ - **手动方式**:在 `data/messageCounter/barBgImgs` 文件夹下添加背景图片
95
+ - 支持多背景(随机选用),文件名格式为 `用户ID-1.png` 等
96
+ - 建议尺寸 850x50 像素,文件名 `用户ID.png`
97
+
98
+ ### 3. 自定义字体
99
+
100
+ - 插件启动时,会自动将内置字体 `HarmonyOS_Sans_Medium.ttf` 拷贝到 `data/messageCounter/fonts/` 目录下。
101
+ - 您可以将自己喜爱的字体文件放入此文件夹,并在配置项的“字体设置”中填入该字体的文件名称(不带后缀)。
102
+
103
+ <br>
104
+
105
+ #### License
106
+
107
+ <sup>
108
+ Licensed under either of <a href="LICENSE-APACHE">Apache License, Version
109
+ 2.0</a> or <a href="LICENSE-MIT">MIT license</a> at your option.
110
+ </sup>
111
+
112
+ <br>
113
+
114
+ <sub>
115
+ Unless you explicitly state otherwise, any contribution intentionally submitted
116
+ for inclusion in this crate by you, as defined in the Apache-2.0 license, shall
117
+ be dual licensed as above, without any additional terms or conditions.
118
+ </sub>