From b4cb3ddf1c63b4b819b63b03564220785988fc46 Mon Sep 17 00:00:00 2001 From: pk5ls20 Date: Mon, 14 Oct 2024 13:59:34 +0800 Subject: [PATCH] refactor: packet --- src/core/apis/packet.ts | 15 ++++++++------- src/core/{helper => }/packet/msg/builder.ts | 15 +++------------ src/core/{helper => }/packet/msg/element.ts | 4 ++-- src/core/packet/msg/entity/forward.ts | 10 ++++++++++ .../packet/client.ts => packet/packetClient.ts} | 0 .../packet/packer.ts => packet/packetPacker.ts} | 17 +++++++++-------- src/core/{ => packet}/proto/NapProto.ts | 0 src/core/{ => packet}/proto/message/action.ts | 2 +- src/core/{ => packet}/proto/message/c2c.ts | 0 .../{ => packet}/proto/message/component.ts | 2 +- src/core/{ => packet}/proto/message/element.ts | 0 src/core/{ => packet}/proto/message/group.ts | 0 src/core/{ => packet}/proto/message/message.ts | 6 +++--- src/core/{ => packet}/proto/message/notify.ts | 0 src/core/{ => packet}/proto/message/routing.ts | 0 .../{ => packet}/proto/oidb/Oidb.0x8FC_2.ts | 0 .../{ => packet}/proto/oidb/Oidb.0x9067_202.ts | 0 src/core/{ => packet}/proto/oidb/Oidb.ed3_1.ts | 0 src/core/{ => packet}/proto/oidb/Oidb.fe1_2.ts | 0 src/core/{ => packet}/proto/oidb/OidbBase.ts | 0 .../proto/oidb/common/Ntv2.RichMedia.ts | 0 src/core/{ => packet}/proto/old/Message.ts | 0 src/core/{ => packet}/proto/old/ProfileLike.ts | 0 src/onebot/action/extends/UploadForwardMsg.ts | 2 +- src/onebot/api/msg.ts | 2 +- src/onebot/api/user.ts | 2 +- src/onebot/index.ts | 4 ++-- 27 files changed, 42 insertions(+), 39 deletions(-) rename src/core/{helper => }/packet/msg/builder.ts (83%) rename src/core/{helper => }/packet/msg/element.ts (94%) create mode 100644 src/core/packet/msg/entity/forward.ts rename src/core/{helper/packet/client.ts => packet/packetClient.ts} (100%) rename src/core/{helper/packet/packer.ts => packet/packetPacker.ts} (87%) rename src/core/{ => packet}/proto/NapProto.ts (100%) rename src/core/{ => packet}/proto/message/action.ts (98%) rename src/core/{ => packet}/proto/message/c2c.ts (100%) rename src/core/{ => packet}/proto/message/component.ts (98%) rename src/core/{ => packet}/proto/message/element.ts (100%) rename src/core/{ => packet}/proto/message/group.ts (100%) rename src/core/{ => packet}/proto/message/message.ts (93%) rename src/core/{ => packet}/proto/message/notify.ts (100%) rename src/core/{ => packet}/proto/message/routing.ts (100%) rename src/core/{ => packet}/proto/oidb/Oidb.0x8FC_2.ts (100%) rename src/core/{ => packet}/proto/oidb/Oidb.0x9067_202.ts (100%) rename src/core/{ => packet}/proto/oidb/Oidb.ed3_1.ts (100%) rename src/core/{ => packet}/proto/oidb/Oidb.fe1_2.ts (100%) rename src/core/{ => packet}/proto/oidb/OidbBase.ts (100%) rename src/core/{ => packet}/proto/oidb/common/Ntv2.RichMedia.ts (100%) rename src/core/{ => packet}/proto/old/Message.ts (100%) rename src/core/{ => packet}/proto/old/ProfileLike.ts (100%) diff --git a/src/core/apis/packet.ts b/src/core/apis/packet.ts index c18dea44..0c5a8091 100644 --- a/src/core/apis/packet.ts +++ b/src/core/apis/packet.ts @@ -2,13 +2,14 @@ import {InstanceContext, NapCatCore} from '..'; import * as os from 'os'; import offset from '@/core/external/offset.json'; import * as crypto from 'crypto'; -import {PacketClient} from '../helper/packet/client'; -import {PacketHexStr, PacketPacker} from "@/core/helper/packet/packer"; -import {NapProtoMsg} from '../proto/NapProto'; -import {OidbSvcTrpcTcp0X9067_202_Rsp_Body} from '../proto/oidb/Oidb.0x9067_202'; -import {OidbSvcTrpcTcpBase, OidbSvcTrpcTcpBaseRsp} from '../proto/oidb/OidbBase'; -import {OidbSvcTrpcTcp0XFE1_2RSP} from '../proto/oidb/Oidb.fe1_2'; -import {PacketForwardNode} from "@/core/helper/packet/msg/builder"; +import {PacketClient} from '@/core/packet/packetClient'; +import {PacketHexStr, PacketPacker} from "@/core/packet/packetPacker"; +import {NapProtoMsg} from '@/core/packet/proto/NapProto'; +import {OidbSvcTrpcTcp0X9067_202_Rsp_Body} from '@/core/packet/proto/oidb/Oidb.0x9067_202'; +import {OidbSvcTrpcTcpBase, OidbSvcTrpcTcpBaseRsp} from '@/core/packet/proto/oidb/OidbBase'; +import {OidbSvcTrpcTcp0XFE1_2RSP} from '@/core/packet/proto/oidb/Oidb.fe1_2'; + +import {PacketForwardNode} from "@/core/packet/msg/entity/forward"; interface OffsetType { [key: string]: { diff --git a/src/core/helper/packet/msg/builder.ts b/src/core/packet/msg/builder.ts similarity index 83% rename from src/core/helper/packet/msg/builder.ts rename to src/core/packet/msg/builder.ts index a1afbc26..1b77c827 100644 --- a/src/core/helper/packet/msg/builder.ts +++ b/src/core/packet/msg/builder.ts @@ -1,16 +1,7 @@ -import {PushMsgBody} from "@/core/proto/message/message"; -import {NapProtoEncodeStructType} from "@/core/proto/NapProto"; -import {SendMessageElement} from "@/core"; +import {PushMsgBody} from "@/core/packet/proto/message/message"; +import {NapProtoEncodeStructType} from "@/core/packet/proto/NapProto"; import * as crypto from "crypto"; -import {IPacketMsgElement} from "@/core/helper/packet/msg/element"; - -export interface PacketForwardNode { - groupId?: number - senderId: number - senderName: string - time: number - msg: IPacketMsgElement[] -} +import {PacketForwardNode} from "@/core/packet/msg/entity/forward"; export class PacketMsgBuilder { buildFakeMsg(selfUid: string, element: PacketForwardNode[]): NapProtoEncodeStructType[] { diff --git a/src/core/helper/packet/msg/element.ts b/src/core/packet/msg/element.ts similarity index 94% rename from src/core/helper/packet/msg/element.ts rename to src/core/packet/msg/element.ts index 7bedee88..c0d5df03 100644 --- a/src/core/helper/packet/msg/element.ts +++ b/src/core/packet/msg/element.ts @@ -1,5 +1,5 @@ -import {NapProtoEncodeStructType, NapProtoMsg} from "@/core/proto/NapProto"; -import {Elem, MentionExtra} from "@/core/proto/message/element"; +import {NapProtoEncodeStructType, NapProtoMsg} from "@/core/packet/proto/NapProto"; +import {Elem, MentionExtra} from "@/core/packet/proto/message/element"; import { AtType, SendArkElement, diff --git a/src/core/packet/msg/entity/forward.ts b/src/core/packet/msg/entity/forward.ts new file mode 100644 index 00000000..00464bcc --- /dev/null +++ b/src/core/packet/msg/entity/forward.ts @@ -0,0 +1,10 @@ +import {IPacketMsgElement} from "@/core/packet/msg/element"; +import {SendMessageElement} from "@/core"; + +export interface PacketForwardNode { + groupId?: number + senderId: number + senderName: string + time: number + msg: IPacketMsgElement[] +} diff --git a/src/core/helper/packet/client.ts b/src/core/packet/packetClient.ts similarity index 100% rename from src/core/helper/packet/client.ts rename to src/core/packet/packetClient.ts diff --git a/src/core/helper/packet/packer.ts b/src/core/packet/packetPacker.ts similarity index 87% rename from src/core/helper/packet/packer.ts rename to src/core/packet/packetPacker.ts index 48066bde..4cb46a7a 100644 --- a/src/core/helper/packet/packer.ts +++ b/src/core/packet/packetPacker.ts @@ -1,12 +1,13 @@ import * as zlib from "node:zlib"; -import { NapProtoMsg } from "@/core/proto/NapProto"; -import { OidbSvcTrpcTcpBase } from "@/core/proto/oidb/OidbBase"; -import { OidbSvcTrpcTcp0X9067_202 } from "@/core/proto/oidb/Oidb.0x9067_202"; -import { OidbSvcTrpcTcp0X8FC_2, OidbSvcTrpcTcp0X8FC_2_Body } from "@/core/proto/oidb/Oidb.0x8FC_2"; -import { OidbSvcTrpcTcp0XFE1_2 } from "@/core/proto/oidb/Oidb.fe1_2"; -import { OidbSvcTrpcTcp0XED3_1 } from "@/core/proto/oidb/Oidb.ed3_1"; -import {LongMsgResult, SendLongMsgReq} from "@/core/proto/message/action"; -import {PacketForwardNode, PacketMsgBuilder} from "@/core/helper/packet/msg/builder"; +import { NapProtoMsg } from "@/core/packet/proto/NapProto"; +import { OidbSvcTrpcTcpBase } from "@/core/packet/proto/oidb/OidbBase"; +import { OidbSvcTrpcTcp0X9067_202 } from "@/core/packet/proto/oidb/Oidb.0x9067_202"; +import { OidbSvcTrpcTcp0X8FC_2, OidbSvcTrpcTcp0X8FC_2_Body } from "@/core/packet/proto/oidb/Oidb.0x8FC_2"; +import { OidbSvcTrpcTcp0XFE1_2 } from "@/core/packet/proto/oidb/Oidb.fe1_2"; +import { OidbSvcTrpcTcp0XED3_1 } from "@/core/packet/proto/oidb/Oidb.ed3_1"; +import {LongMsgResult, SendLongMsgReq} from "@/core/packet/proto/message/action"; +import {PacketMsgBuilder} from "@/core/packet/msg/builder"; +import {PacketForwardNode} from "@/core/packet/msg/entity/forward"; export type PacketHexStr = string & { readonly hexNya: unique symbol }; diff --git a/src/core/proto/NapProto.ts b/src/core/packet/proto/NapProto.ts similarity index 100% rename from src/core/proto/NapProto.ts rename to src/core/packet/proto/NapProto.ts diff --git a/src/core/proto/message/action.ts b/src/core/packet/proto/message/action.ts similarity index 98% rename from src/core/proto/message/action.ts rename to src/core/packet/proto/message/action.ts index 43cd09d9..e145166a 100644 --- a/src/core/proto/message/action.ts +++ b/src/core/packet/proto/message/action.ts @@ -1,6 +1,6 @@ import {ScalarType} from "@protobuf-ts/runtime"; import {ProtoField} from "../NapProto"; -import {PushMsgBody} from "@/core/proto/message/message"; +import {PushMsgBody} from "@/core/packet/proto/message/message"; export const LongMsgResult = { action: ProtoField(2, () => LongMsgAction) diff --git a/src/core/proto/message/c2c.ts b/src/core/packet/proto/message/c2c.ts similarity index 100% rename from src/core/proto/message/c2c.ts rename to src/core/packet/proto/message/c2c.ts diff --git a/src/core/proto/message/component.ts b/src/core/packet/proto/message/component.ts similarity index 98% rename from src/core/proto/message/component.ts rename to src/core/packet/proto/message/component.ts index d4d8e623..984b5f3a 100644 --- a/src/core/proto/message/component.ts +++ b/src/core/packet/proto/message/component.ts @@ -1,6 +1,6 @@ import { ScalarType } from "@protobuf-ts/runtime"; import { ProtoField } from "../NapProto"; -import { Elem } from "@/core/proto/message/element"; +import { Elem } from "@/core/packet/proto/message/element"; export const Attr = { codePage: ProtoField(1, ScalarType.INT32), diff --git a/src/core/proto/message/element.ts b/src/core/packet/proto/message/element.ts similarity index 100% rename from src/core/proto/message/element.ts rename to src/core/packet/proto/message/element.ts diff --git a/src/core/proto/message/group.ts b/src/core/packet/proto/message/group.ts similarity index 100% rename from src/core/proto/message/group.ts rename to src/core/packet/proto/message/group.ts diff --git a/src/core/proto/message/message.ts b/src/core/packet/proto/message/message.ts similarity index 93% rename from src/core/proto/message/message.ts rename to src/core/packet/proto/message/message.ts index 23b92311..91cc16af 100644 --- a/src/core/proto/message/message.ts +++ b/src/core/packet/proto/message/message.ts @@ -1,8 +1,8 @@ import { ScalarType } from "@protobuf-ts/runtime"; import { ProtoField } from "../NapProto"; -import {ForwardHead, Grp, GrpTmp, ResponseForward, ResponseGrp, Trans0X211, WPATmp} from "@/core/proto/message/routing"; -import {RichText} from "@/core/proto/message/component"; -import {C2C} from "@/core/proto/message/c2c"; +import {ForwardHead, Grp, GrpTmp, ResponseForward, ResponseGrp, Trans0X211, WPATmp} from "@/core/packet/proto/message/routing"; +import {RichText} from "@/core/packet/proto/message/component"; +import {C2C} from "@/core/packet/proto/message/c2c"; export const ContentHead = { type: ProtoField(1, ScalarType.UINT32), diff --git a/src/core/proto/message/notify.ts b/src/core/packet/proto/message/notify.ts similarity index 100% rename from src/core/proto/message/notify.ts rename to src/core/packet/proto/message/notify.ts diff --git a/src/core/proto/message/routing.ts b/src/core/packet/proto/message/routing.ts similarity index 100% rename from src/core/proto/message/routing.ts rename to src/core/packet/proto/message/routing.ts diff --git a/src/core/proto/oidb/Oidb.0x8FC_2.ts b/src/core/packet/proto/oidb/Oidb.0x8FC_2.ts similarity index 100% rename from src/core/proto/oidb/Oidb.0x8FC_2.ts rename to src/core/packet/proto/oidb/Oidb.0x8FC_2.ts diff --git a/src/core/proto/oidb/Oidb.0x9067_202.ts b/src/core/packet/proto/oidb/Oidb.0x9067_202.ts similarity index 100% rename from src/core/proto/oidb/Oidb.0x9067_202.ts rename to src/core/packet/proto/oidb/Oidb.0x9067_202.ts diff --git a/src/core/proto/oidb/Oidb.ed3_1.ts b/src/core/packet/proto/oidb/Oidb.ed3_1.ts similarity index 100% rename from src/core/proto/oidb/Oidb.ed3_1.ts rename to src/core/packet/proto/oidb/Oidb.ed3_1.ts diff --git a/src/core/proto/oidb/Oidb.fe1_2.ts b/src/core/packet/proto/oidb/Oidb.fe1_2.ts similarity index 100% rename from src/core/proto/oidb/Oidb.fe1_2.ts rename to src/core/packet/proto/oidb/Oidb.fe1_2.ts diff --git a/src/core/proto/oidb/OidbBase.ts b/src/core/packet/proto/oidb/OidbBase.ts similarity index 100% rename from src/core/proto/oidb/OidbBase.ts rename to src/core/packet/proto/oidb/OidbBase.ts diff --git a/src/core/proto/oidb/common/Ntv2.RichMedia.ts b/src/core/packet/proto/oidb/common/Ntv2.RichMedia.ts similarity index 100% rename from src/core/proto/oidb/common/Ntv2.RichMedia.ts rename to src/core/packet/proto/oidb/common/Ntv2.RichMedia.ts diff --git a/src/core/proto/old/Message.ts b/src/core/packet/proto/old/Message.ts similarity index 100% rename from src/core/proto/old/Message.ts rename to src/core/packet/proto/old/Message.ts diff --git a/src/core/proto/old/ProfileLike.ts b/src/core/packet/proto/old/ProfileLike.ts similarity index 100% rename from src/core/proto/old/ProfileLike.ts rename to src/core/packet/proto/old/ProfileLike.ts diff --git a/src/onebot/action/extends/UploadForwardMsg.ts b/src/onebot/action/extends/UploadForwardMsg.ts index 815830bc..23cfa021 100644 --- a/src/onebot/action/extends/UploadForwardMsg.ts +++ b/src/onebot/action/extends/UploadForwardMsg.ts @@ -1,7 +1,7 @@ import BaseAction from '../BaseAction'; import { ActionName } from '../types'; import { FromSchema, JSONSchema } from 'json-schema-to-ts'; -import {PacketMsgTextElement} from "@/core/helper/packet/msg/element"; +import {PacketMsgTextElement} from "@/core/packet/msg/element"; import {SendTextElement} from "@/core"; diff --git a/src/onebot/api/msg.ts b/src/onebot/api/msg.ts index 2b28401c..0ab90a60 100644 --- a/src/onebot/api/msg.ts +++ b/src/onebot/api/msg.ts @@ -34,7 +34,7 @@ import { RequestUtil } from '@/common/request'; import fs from 'node:fs'; import fsPromise from 'node:fs/promises'; import { OB11FriendAddNoticeEvent } from '@/onebot/event/notice/OB11FriendAddNoticeEvent'; -import { decodeSysMessage } from '@/core/proto/old/ProfileLike'; +import { decodeSysMessage } from '@/core/packet/proto/old/ProfileLike'; type RawToOb11Converters = { [Key in keyof MessageElement as Key extends `${string}Element` ? Key : never]: ( diff --git a/src/onebot/api/user.ts b/src/onebot/api/user.ts index 67621a49..7c3c09d1 100644 --- a/src/onebot/api/user.ts +++ b/src/onebot/api/user.ts @@ -1,5 +1,5 @@ import { NapCatCore } from '@/core'; -import { decodeProfileLikeTip } from '@/core/proto/old/ProfileLike'; +import { decodeProfileLikeTip } from '@/core/packet/proto/old/ProfileLike'; import { NapCatOneBot11Adapter } from '@/onebot'; import { OB11ProfileLikeEvent } from '../event/notice/OB11ProfileLikeEvent'; diff --git a/src/onebot/index.ts b/src/onebot/index.ts index 5df0263d..1b8b150e 100644 --- a/src/onebot/index.ts +++ b/src/onebot/index.ts @@ -45,7 +45,7 @@ import { OB11GroupRecallNoticeEvent } from '@/onebot/event/notice/OB11GroupRecal import { LRUCache } from '@/common/lru-cache'; import { NodeIKernelRecentContactListener } from '@/core/listeners/NodeIKernelRecentContactListener'; import { Native } from '@/native'; -import { decodeMessage, decodeRecallGroup, Message, RecallGroup } from '@/core/proto/old/Message'; +import { decodeMessage, decodeRecallGroup, Message, RecallGroup } from '@/core/packet/proto/old/Message'; import { OB11MessageDataType } from './types'; //OneBot实现类 @@ -547,7 +547,7 @@ export class NapCatOneBot11Adapter { // this.core.apis.PacketApi.sendSetSpecialTittlePacket(message.peerUin, uid, '测试'); // console.log('set', message.peerUin, uid); // } - + // }); // }