diff --git a/docs/changelogs/CHANGELOG.v1.4.0.md b/docs/changelogs/CHANGELOG.v1.3.6.md similarity index 96% rename from docs/changelogs/CHANGELOG.v1.4.0.md rename to docs/changelogs/CHANGELOG.v1.3.6.md index 66bb69f5..35bf957b 100644 --- a/docs/changelogs/CHANGELOG.v1.4.0.md +++ b/docs/changelogs/CHANGELOG.v1.3.6.md @@ -1,4 +1,4 @@ -# v1.4.0 +# v1.3.6 QQ Version: Windows 9.9.9-23424 / Linux 3.2.7-23361 diff --git a/package.json b/package.json index 5689850a..350d605e 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "napcat", "private": true, "type": "module", - "version": "1.3.5", + "version": "1.3.6", "scripts": { "watch:dev": "vite --mode development", "watch:prod": "vite --mode production", diff --git a/src/onebot11/main.ts b/src/onebot11/main.ts index 3f83ab3b..86ce569c 100644 --- a/src/onebot11/main.ts +++ b/src/onebot11/main.ts @@ -33,6 +33,8 @@ import { OB11Message } from '@/onebot11/types'; import { OB11LifeCycleEvent } from './event/meta/OB11LifeCycleEvent'; import { Data as SysData } from '@/proto/SysMessage' import { OB11FriendPokeEvent, OB11GroupPokeEvent } from './event/notice/OB11PokeEvent'; +//peer->cached(boolen) +let PokeCache = new Map(); export class NapCatOnebot11 { private bootTime: number = Date.now() / 1000; // 秒 @@ -96,18 +98,29 @@ export class NapCatOnebot11 { let MsgType = sysMsg.body[0].msgType; let subType0 = sysMsg.body[0].subType0; let subType1 = sysMsg.body[0].subType1; - let pokeEvent: OB11FriendPokeEvent | OB11GroupPokeEvent + let pokeEvent: OB11FriendPokeEvent | OB11GroupPokeEvent; + //console.log(peeruid); if (MsgType == 528 && subType0 == 290) { - log("[私聊] 用户 ", peeruin, " 对你戳一戳"); - pokeEvent = new OB11FriendPokeEvent(peeruin); - postOB11Event(pokeEvent) - //私聊戳一戳 + // 防止上报两次 私聊戳一戳 + if (PokeCache.has(peeruid)) { + PokeCache.delete(peeruid); + } else { + PokeCache.set(peeruid, false); + log("[私聊] 用户 ", peeruin, " 对你戳一戳"); + pokeEvent = new OB11FriendPokeEvent(peeruin); + postOB11Event(pokeEvent); + } } if (MsgType == 732 && subType0 == 20) { - log("[群聊] 群组 ", peeruin, " 戳一戳"); - pokeEvent = new OB11GroupPokeEvent(peeruin); - postOB11Event(pokeEvent) - //群聊戳一戳 + // 防止上报两次 群聊戳一戳 + if (PokeCache.has(peeruid)) { + PokeCache.delete(peeruid); + } else { + PokeCache.set(peeruid, false); + log("[群聊] 群组 ", peeruin, " 戳一戳"); + pokeEvent = new OB11GroupPokeEvent(peeruin); + postOB11Event(pokeEvent); + } } } catch (e) { log("解析SysMsg异常", e); @@ -305,7 +318,7 @@ export class NapCatOnebot11 { } else if (isHttpEnableChanged && !NewOb11.http.enable) { ob11ReverseWebsockets.stop(); } - + } catch (e) { logError('热重载配置失败', e); } diff --git a/src/onebot11/version.ts b/src/onebot11/version.ts index b8ef4e82..980d7500 100644 --- a/src/onebot11/version.ts +++ b/src/onebot11/version.ts @@ -1 +1 @@ -export const version = '1.3.5'; +export const version = '1.3.6'; diff --git a/src/webui/ui/NapCat.ts b/src/webui/ui/NapCat.ts index d08bb638..6d13ce58 100644 --- a/src/webui/ui/NapCat.ts +++ b/src/webui/ui/NapCat.ts @@ -29,7 +29,7 @@ async function onSettingWindowCreated(view: Element) { SettingItem( 'Napcat', undefined, - SettingButton("V1.3.5", "napcat-update-button", "secondary") + SettingButton("V1.3.6", "napcat-update-button", "secondary") ), ]), SettingList([ diff --git a/static/assets/renderer.js b/static/assets/renderer.js index 740346b7..56bf4b86 100644 --- a/static/assets/renderer.js +++ b/static/assets/renderer.js @@ -167,7 +167,7 @@ async function onSettingWindowCreated(view) { SettingItem( 'Napcat', void 0, - SettingButton("V1.3.5", "napcat-update-button", "secondary") + SettingButton("V1.3.6", "napcat-update-button", "secondary") ) ]), SettingList([