koishi-plugin-stock 1.0.1 → 1.0.2

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/README.md CHANGED
@@ -6,6 +6,7 @@
6
6
 
7
7
  - 用户发送"活跃市值"命令时,自动从 http://stock.svip886.com/api/indexes 获取数据并格式化显示
8
8
  - 用户发送"异动 [股票代码]"命令时,自动从 http://stock.svip886.com/api/analyze?code=[股票代码] 获取指定股票的异动分析数据
9
+ - 用户发送"涨停看板"命令时,自动下载 http://stock.svip886.com/api/limit_up.png 图片并显示
9
10
  - 自动格式化数据显示给用户
10
11
 
11
12
  ## 安装
package/lib/index.js CHANGED
@@ -37,6 +37,24 @@ function apply(ctx) {
37
37
  return `获取股票 ${stockCode} 异动数据失败,请稍后重试。`;
38
38
  }
39
39
  });
40
+ // 监听涨停看板命令
41
+ ctx.command('涨停看板', '获取涨停看板图片')
42
+ .action(async ({ session }) => {
43
+ try {
44
+ // 使用Koishi的HTTP服务下载图片
45
+ const imageUrl = 'http://stock.svip886.com/api/limit_up.png';
46
+ // 获取图片的Buffer数据
47
+ const imageBuffer = await ctx.http.get(imageUrl, { responseType: 'arraybuffer' });
48
+ // 将Buffer转换为Base64编码
49
+ const base64Image = Buffer.from(imageBuffer).toString('base64');
50
+ // 返回图片
51
+ return `<img src="data:image/png;base64,${base64Image}" />`;
52
+ }
53
+ catch (error) {
54
+ console.error('获取涨停看板图片失败:', error);
55
+ return '获取涨停看板图片失败,请稍后重试。';
56
+ }
57
+ });
40
58
  // 使用中间件方式监听特定关键词(作为备用方案)
41
59
  ctx.middleware(async (session, next) => {
42
60
  const content = session.content?.trim();
@@ -69,6 +87,22 @@ function apply(ctx) {
69
87
  }
70
88
  }
71
89
  }
90
+ else if (content === '涨停看板') {
91
+ try {
92
+ // 使用Koishi的HTTP服务下载图片
93
+ const imageUrl = 'http://stock.svip886.com/api/limit_up.png';
94
+ // 获取图片的Buffer数据
95
+ const imageBuffer = await ctx.http.get(imageUrl, { responseType: 'arraybuffer' });
96
+ // 将Buffer转换为Base64编码
97
+ const base64Image = Buffer.from(imageBuffer).toString('base64');
98
+ // 返回图片
99
+ return `<img src="data:image/png;base64,${base64Image}" />`;
100
+ }
101
+ catch (error) {
102
+ console.error('获取涨停看板图片失败:', error);
103
+ return '获取涨停看板图片失败,请稍后重试。';
104
+ }
105
+ }
72
106
  return next();
73
107
  });
74
108
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "koishi-plugin-stock",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "description": "A Koishi plugin that fetches stock data when user sends '活跃市值' or '异动 [stock code]'",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",