koishi-plugin-bilibili-notify 3.0.5-alpha.0 → 3.0.5-alpha.1

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.
@@ -132,7 +132,7 @@ class ComRegister {
132
132
  }, async (err, buffer) => {
133
133
  if (err)
134
134
  return await session.send("二维码生成出错,请重新尝试");
135
- await session.send(koishi_1.h.image(buffer, "image/png"));
135
+ await session.send(koishi_1.h.image(buffer, "image/jpeg"));
136
136
  });
137
137
  // 检查之前是否存在登录定时器
138
138
  if (this.loginTimer)
@@ -269,7 +269,7 @@ class ComRegister {
269
269
  // 生成图片
270
270
  const buffer = await this.ctx.gi.generateDynamicImg(item);
271
271
  // 发送图片
272
- await session.send(koishi_1.h.image(buffer, "image/png"));
272
+ await session.send(koishi_1.h.image(buffer, "image/jpeg"));
273
273
  });
274
274
  }
275
275
  async init(config) {
@@ -649,7 +649,7 @@ class ComRegister {
649
649
  // logger
650
650
  this.logger.info("推送动态中...");
651
651
  // 发送推送卡片
652
- await this.sendMsg(sub.target, (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [koishi_1.h.image(buffer, "image/png"), dUrl] }));
652
+ await this.sendMsg(sub.target, (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [koishi_1.h.image(buffer, "image/jpeg"), dUrl] }));
653
653
  // 判断是否需要发送动态中的图片
654
654
  if (this.config.pushImgsInDynamic) {
655
655
  // 判断是否为图文动态,且存在draw
@@ -876,7 +876,7 @@ class ComRegister {
876
876
  // logger
877
877
  this.logger.info("推送动态中...");
878
878
  // 发送推送卡片
879
- await this.sendMsg(sub.target, (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [koishi_1.h.image(buffer, "image/png"), dUrl] }));
879
+ await this.sendMsg(sub.target, (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [koishi_1.h.image(buffer, "image/jpeg"), dUrl] }));
880
880
  // logger
881
881
  this.logger.info("动态推送完毕!");
882
882
  // 判断是否需要发送动态中的图片
@@ -995,7 +995,7 @@ class ComRegister {
995
995
  if (!buffer)
996
996
  return await this.sendPrivateMsgAndStopService();
997
997
  // 推送直播信息
998
- const msg = ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [koishi_1.h.image(buffer, "image/png"), liveNotifyMsg || ""] }));
998
+ const msg = ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [koishi_1.h.image(buffer, "image/jpeg"), liveNotifyMsg || ""] }));
999
999
  // 只有在开播时才艾特全体成员
1000
1000
  return await this.sendMsg(target, msg, liveType === type_1.LiveType.StartBroadcasting);
1001
1001
  };
@@ -8,7 +8,6 @@ declare class GenerateImg extends Service {
8
8
  static inject: string[];
9
9
  giConfig: GenerateImg.Config;
10
10
  constructor(ctx: Context, config: GenerateImg.Config);
11
- compressImage(buffer: Buffer): Promise<Buffer>;
12
11
  imgHandler(html: string): Promise<Buffer<ArrayBufferLike>>;
13
12
  generateLiveImg(data: any, username: string, userface: string, followerDisplay: string, liveStatus: number, { cardColorStart, cardColorEnd, cardBasePlateColor, cardBasePlateBorder, }: {
14
13
  cardColorStart?: string;
@@ -1,12 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  const koishi_1 = require("koishi");
7
4
  const luxon_1 = require("luxon");
8
- const imagemin_1 = __importDefault(require("imagemin"));
9
- const imagemin_pngquant_1 = __importDefault(require("imagemin-pngquant"));
10
5
  const node_path_1 = require("node:path");
11
6
  const node_url_1 = require("node:url");
12
7
  const utils_1 = require("./utils");
@@ -34,25 +29,6 @@ class GenerateImg extends koishi_1.Service {
34
29
  super(ctx, "gi");
35
30
  this.giConfig = config;
36
31
  }
37
- async compressImage(buffer) {
38
- return await (0, utils_1.withRetry)(async () => {
39
- const compressedBuffer = await imagemin_1.default.buffer(buffer, {
40
- plugins: [
41
- (0, imagemin_pngquant_1.default)({
42
- quality: [0.6, 0.8],
43
- speed: 4,
44
- }),
45
- ],
46
- });
47
- if (compressedBuffer.length >= buffer.length) {
48
- return buffer;
49
- }
50
- return Buffer.from(compressedBuffer);
51
- }, 1).catch((e) => {
52
- this.ctx.logger.error(`压缩图片失败: ${e.message}`);
53
- return buffer;
54
- });
55
- }
56
32
  async imgHandler(html) {
57
33
  const htmlPath = `file://${__dirname.replaceAll("\\", "/")}/page/0.html`;
58
34
  const page = await this.ctx.puppeteer.page();
@@ -61,7 +37,7 @@ class GenerateImg extends koishi_1.Service {
61
37
  const elementHandle = await page.$("html");
62
38
  const boundingBox = await elementHandle.boundingBox();
63
39
  const buffer = await page.screenshot({
64
- type: "png",
40
+ type: "jpeg",
65
41
  clip: {
66
42
  x: boundingBox.x,
67
43
  y: boundingBox.y,
@@ -71,7 +47,7 @@ class GenerateImg extends koishi_1.Service {
71
47
  });
72
48
  await elementHandle.dispose();
73
49
  await page.close();
74
- return this.compressImage(buffer);
50
+ return buffer;
75
51
  }
76
52
  async generateLiveImg(
77
53
  // biome-ignore lint/suspicious/noExplicitAny: <explanation>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "koishi-plugin-bilibili-notify",
3
3
  "description": "Koishi bilibili notify plugin",
4
- "version": "3.0.5-alpha.0",
4
+ "version": "3.0.5-alpha.1",
5
5
  "contributors": [
6
6
  "Akokko <admin@akokko.com>"
7
7
  ],
@@ -27,11 +27,10 @@
27
27
  "koishi": "^4.18.7"
28
28
  },
29
29
  "dependencies": {
30
+ "@napi-rs/canvas": "^0.1.69",
30
31
  "axios": "^1.7.9",
31
32
  "axios-cookiejar-support": "^5.0.5",
32
33
  "blive-message-listener": "^0.5.0",
33
- "imagemin": "^9.0.1",
34
- "imagemin-pngquant": "^10.0.0",
35
34
  "jsdom": "^24.1.3",
36
35
  "luxon": "^3.5.0",
37
36
  "md5": "^2.3.0",
@@ -41,7 +40,6 @@
41
40
  },
42
41
  "devDependencies": {
43
42
  "@biomejs/biome": "1.9.4",
44
- "@types/imagemin": "^9",
45
43
  "@types/luxon": "^3.4.2",
46
44
  "@types/md5": "^2.3.5",
47
45
  "@types/qrcode": "^1.5.5",
package/readme.md CHANGED
@@ -228,6 +228,7 @@ uid为必填参数,为要推送的UP主的UID,index为可选参数,为要
228
228
  - ver 3.0.3 移除:配置项 `dynamicLoopTime` ,动态循环时间将不再可选,默认为两分钟
229
229
  - ver 3.0.4 优化:动态监测,增加时间判断,防止出现重复推送问题; 由于 `3.0.2` 动态监测定时器更换为cron定时任务,如果需要测试动态监测功能是否正常,可以通过控制台日志输出观察,打印 `动态监测初始化完毕!` 后,可进行测试
230
230
  - ver 3.0.5-alpha.0 优化:推送卡片渲染,压缩图片; 新增:指令 `bili dyn` 可用于推送指定UP主指定动态
231
+ - ver 3.0.5-alpha.1 优化:推送卡片渲染,调整渲染图片格式为 `jpeg`
231
232
 
232
233
  ## 交流群
233
234