koishi-plugin-cat-raising 0.0.6 → 0.0.7

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.
Files changed (2) hide show
  1. package/lib/index.js +12 -7
  2. package/package.json +1 -1
package/lib/index.js CHANGED
@@ -33,20 +33,22 @@ var Config = import_koishi.Schema.object({
33
33
  monitorGroup: import_koishi.Schema.string().description("监听的群号(只检测此群的消息)").required()
34
34
  });
35
35
  function apply(ctx, config) {
36
- let lastForwardedMessage = "";
36
+ const forwardedMessageHistory = [];
37
+ const HISTORY_SIZE = 10;
37
38
  const messageMap = /* @__PURE__ */ new Map();
38
39
  ctx.on("message", async (session) => {
39
- const message = session.content;
40
+ const originalMessageContent = session.content;
41
+ const messageForChecks = session.stripped.content;
40
42
  const messageId = session.messageId;
41
43
  if (session.channelId !== config.monitorGroup) return;
42
- if (!message.includes("神金")) return;
44
+ if (!messageForChecks.includes("神金")) return;
43
45
  const numberRegex = /\d{6,15}/;
44
- if (!numberRegex.test(message)) return;
45
- if (message === lastForwardedMessage) {
46
+ if (!numberRegex.test(messageForChecks)) return;
47
+ if (forwardedMessageHistory.includes(originalMessageContent)) {
46
48
  session.send("🐱 - 检测到复读机行为,停止转发");
47
49
  return;
48
50
  }
49
- const forwardMessage = message;
51
+ const forwardMessage = originalMessageContent;
50
52
  try {
51
53
  let forwardedMessageId;
52
54
  if (config.isGroup) {
@@ -57,7 +59,10 @@ function apply(ctx, config) {
57
59
  forwardedMessageId = result[0];
58
60
  }
59
61
  messageMap.set(messageId, forwardedMessageId);
60
- lastForwardedMessage = message;
62
+ forwardedMessageHistory.push(originalMessageContent);
63
+ if (forwardedMessageHistory.length > HISTORY_SIZE) {
64
+ forwardedMessageHistory.shift();
65
+ }
61
66
  } catch (error) {
62
67
  session.send("🐱 - 转发失败,请检查配置");
63
68
  console.error("转发失败:", error);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "koishi-plugin-cat-raising",
3
3
  "description": "",
4
- "version": "0.0.6",
4
+ "version": "0.0.7",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "files": [