feat: 迁移at 消息段

This commit is contained in:
手瓜一十雪
2025-05-16 21:21:22 +08:00
parent a586796339
commit ba1acd624e
2 changed files with 27 additions and 26 deletions

View File

@@ -94,15 +94,16 @@ export class OneBotMsgApi {
};
} else {
let qq: string = 'all';
const { atNtUid, atUid, content } = element;
if (element.atType !== NTMsgAtType.ATTYPEALL) {
const { atNtUid, atUid } = element;
qq = !atUid || atUid === '0' ? await this.core.apis.UserApi.getUinByUidV2(atNtUid) : String(Number(atUid) >>> 0);
}
return {
type: OB11MessageDataType.at,
data: {
qq: qq,
// name: content.slice(1);
id: qq,
name: content.slice(1)
},
};
}
@@ -514,7 +515,7 @@ export class OneBotMsgApi {
},
}),
[OB11MessageDataType.at]: async ({ data: { qq: atQQ } }, context) => {
[OB11MessageDataType.at]: async ({ data: { id: atQQ } }, context) => {
function at(atUid: string, atNtUid: string, atType: NTMsgAtType, atName: string): SendTextElement {
return {
elementType: ElementType.TEXT,
@@ -936,7 +937,7 @@ export class OneBotMsgApi {
const validSegments = await this.parseMessageSegments(msg, parseMultMsg);
resMsg.message = validSegments;
return { arrayMsg: resMsg };
return { arrayMsg: resMsg };
}
private initializeMessage(msg: RawMessage): OB11Message {
@@ -1070,16 +1071,16 @@ export class OneBotMsgApi {
const calculateTotalSize = async (elements: SendMessageElement[]): Promise<number> => {
const sizePromises = elements.map(async element => {
switch (element.elementType) {
case ElementType.PTT:
return (await fsPromise.stat(element.pttElement.filePath)).size;
case ElementType.FILE:
return (await fsPromise.stat(element.fileElement.filePath)).size;
case ElementType.VIDEO:
return (await fsPromise.stat(element.videoElement.filePath)).size;
case ElementType.PIC:
return (await fsPromise.stat(element.picElement.sourcePath)).size;
default:
return 0;
case ElementType.PTT:
return (await fsPromise.stat(element.pttElement.filePath)).size;
case ElementType.FILE:
return (await fsPromise.stat(element.fileElement.filePath)).size;
case ElementType.VIDEO:
return (await fsPromise.stat(element.videoElement.filePath)).size;
case ElementType.PIC:
return (await fsPromise.stat(element.picElement.sourcePath)).size;
default:
return 0;
}
});
const sizes = await Promise.all(sizePromises);
@@ -1169,16 +1170,16 @@ export class OneBotMsgApi {
groupChangDecreseType2String(type: number): GroupDecreaseSubType {
switch (type) {
case 130:
return 'leave';
case 131:
return 'kick';
case 3:
return 'kick_me';
case 129:
return 'disband';
default:
return 'kick';
case 130:
return 'leave';
case 131:
return 'kick';
case 3:
return 'kick_me';
case 129:
return 'disband';
default:
return 'kick';
}
}

View File

@@ -143,7 +143,7 @@ export interface OB11MessageVideo extends OB11MessageFileBase {
export interface OB11MessageAt {
type: OB11MessageDataType.at;
data: {
qq: string; // `${number}` | 'all'
id: string; // `${number}` | 'all'
name?: string;
};
}