onebots 0.4.62 → 0.4.64
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/lib/adapter.d.ts +1 -1
- package/lib/adapters/dingtalk/index.d.ts +1 -1
- package/lib/adapters/dingtalk/index.js +13 -2
- package/lib/adapters/icqq/index.d.ts +2 -2
- package/lib/adapters/icqq/index.js +17 -70
- package/lib/adapters/icqq/utils.d.ts +4 -6
- package/lib/adapters/icqq/utils.js +63 -21
- package/lib/adapters/qq/index.d.ts +1 -1
- package/lib/adapters/qq/index.js +13 -2
- package/lib/adapters/wechat/index.d.ts +1 -1
- package/lib/adapters/wechat/index.js +13 -2
- package/lib/service/V11/index.js +2 -3
- package/lib/service/V12/action/common.d.ts +1 -0
- package/lib/service/V12/action/common.js +3 -0
- package/lib/service/V12/index.d.ts +1 -0
- package/lib/service/V12/index.js +13 -1
- package/package.json +1 -1
- /package/lib/{service → adapters/icqq}/shareMusicCustom.d.ts +0 -0
- /package/lib/{service → adapters/icqq}/shareMusicCustom.js +0 -0
package/lib/adapter.d.ts
CHANGED
|
@@ -46,7 +46,7 @@ export interface Adapter<T extends string = string, Sendable = any> extends Adap
|
|
|
46
46
|
export declare namespace Adapter {
|
|
47
47
|
interface Base<Sendable = any> {
|
|
48
48
|
toSegment<V extends OneBot.Version>(version: V, message: Sendable): OneBot.Segment<V>[];
|
|
49
|
-
fromSegment<V extends OneBot.Version>(version: V, segment: OneBot.Segment<V>[]): Sendable;
|
|
49
|
+
fromSegment<V extends OneBot.Version>(onebot: OneBot, version: V, segment: OneBot.Segment<V>[]): Sendable;
|
|
50
50
|
getSelfInfo<V extends OneBot.Version>(uin: string, version: V): OneBot.SelfInfo<V>;
|
|
51
51
|
/** 格式化事件 */
|
|
52
52
|
formatEventPayload<V extends OneBot.Version>(uin: string, version: V, event: string, payload: Dict): OneBot.Payload<V>;
|
|
@@ -17,7 +17,7 @@ export default class DingtalkAdapter extends Adapter<"dingtalk", Sendable> {
|
|
|
17
17
|
sendPrivateMessage<V extends OneBot.Version>(uin: string, version: V, args: [string, Sendable, string]): Promise<OneBot.MessageRet<V>>;
|
|
18
18
|
sendGroupMessage<V extends OneBot.Version>(uin: string, version: V, args: [string, Sendable, string]): Promise<OneBot.MessageRet<V>>;
|
|
19
19
|
deleteMessage(uin: string, message_id: string): Promise<boolean>;
|
|
20
|
-
fromSegment<V extends OneBot.Version>(version: V, segment: OneBot.Segment<V> | OneBot.Segment<V>[]): Sendable;
|
|
20
|
+
fromSegment<V extends OneBot.Version>(onebot: OneBot<Bot>, version: V, segment: OneBot.Segment<V> | OneBot.Segment<V>[]): Sendable;
|
|
21
21
|
toSegment<V extends OneBot.Version>(version: V, message: Sendable): OneBot.Segment<V>[];
|
|
22
22
|
fromCqcode<V extends OneBot.Version>(version: V, message: string): OneBot.Segment<V>[];
|
|
23
23
|
formatEventPayload<V extends OneBot.Version>(uin: string, version: V, event: string, data: any): OneBot.Payload<V>;
|
|
@@ -139,8 +139,15 @@ class DingtalkAdapter extends adapter_1.Adapter {
|
|
|
139
139
|
throw new Error(`暂不支持撤回${from_type}类型的消息`);
|
|
140
140
|
}
|
|
141
141
|
}
|
|
142
|
-
fromSegment(version, segment) {
|
|
143
|
-
return []
|
|
142
|
+
fromSegment(onebot, version, segment) {
|
|
143
|
+
return []
|
|
144
|
+
.concat(segment)
|
|
145
|
+
.map(segment => {
|
|
146
|
+
if (version === "V12" && ["image", "video", "audio"].includes(segment.type))
|
|
147
|
+
return onebot.V12.transformMedia(segment);
|
|
148
|
+
return segment;
|
|
149
|
+
})
|
|
150
|
+
.map(item => {
|
|
144
151
|
if (typeof item === "string")
|
|
145
152
|
return item;
|
|
146
153
|
const { type, data } = item;
|
|
@@ -204,6 +211,10 @@ class DingtalkAdapter extends adapter_1.Adapter {
|
|
|
204
211
|
platform: "dingtalk",
|
|
205
212
|
time: data.timestamp,
|
|
206
213
|
...data,
|
|
214
|
+
sender: {
|
|
215
|
+
...(data?.sender || {}),
|
|
216
|
+
},
|
|
217
|
+
user_id: data.user_id || data.sender?.user_id,
|
|
207
218
|
message_id: `${data.message_type}:${data.group_id || data.user_id}:${data.message_id}`,
|
|
208
219
|
};
|
|
209
220
|
delete result.bot;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Adapter } from "../../adapter";
|
|
2
2
|
import { App } from "../../server/app";
|
|
3
|
-
import { Config as IcqqConfig, Sendable } from "@icqqjs/icqq";
|
|
3
|
+
import { Client, Config as IcqqConfig, Sendable } from "@icqqjs/icqq";
|
|
4
4
|
import { OneBot } from "../../onebot";
|
|
5
5
|
export default class IcqqAdapter extends Adapter<"icqq", Sendable> {
|
|
6
6
|
#private;
|
|
@@ -16,7 +16,7 @@ export default class IcqqAdapter extends Adapter<"icqq", Sendable> {
|
|
|
16
16
|
sendGuildMessage<V extends OneBot.Version>(uin: string, version: V, args: [string, Sendable, string?]): Promise<OneBot.MessageRet<V>>;
|
|
17
17
|
getMessage<V extends OneBot.Version>(uin: string, version: V, [message_id]: [string]): Promise<OneBot.Message<V>>;
|
|
18
18
|
call<V extends OneBot.Version>(uin: string, version: V, method: string, args?: any[]): Promise<any>;
|
|
19
|
-
fromSegment<V extends OneBot.Version>(version: V, segment: OneBot.Segment<V> | OneBot.Segment<V>[]): Sendable;
|
|
19
|
+
fromSegment<V extends OneBot.Version>(onebot: OneBot<Client>, version: V, segment: OneBot.Segment<V> | OneBot.Segment<V>[]): Sendable;
|
|
20
20
|
toSegment<V extends OneBot.Version>(version: V, message: Sendable): OneBot.Segment<V>[];
|
|
21
21
|
getSelfInfo<V extends OneBot.Version>(uin: string, version: V): OneBot.SelfInfo<V>;
|
|
22
22
|
startOneBot(oneBot: OneBot): Promise<Function>;
|
|
@@ -45,72 +45,8 @@ const process_1 = __importDefault(require("process"));
|
|
|
45
45
|
const fs_1 = require("fs");
|
|
46
46
|
const onebot_1 = require("../../onebot");
|
|
47
47
|
const path = __importStar(require("path"));
|
|
48
|
-
const shareMusicCustom_1 = require("../../service/shareMusicCustom");
|
|
49
48
|
const message_1 = require("@icqqjs/icqq/lib/message");
|
|
50
|
-
|
|
51
|
-
let result = [];
|
|
52
|
-
for (const item of list) {
|
|
53
|
-
const { type, data, ...other } = item;
|
|
54
|
-
switch (type) {
|
|
55
|
-
case "node": {
|
|
56
|
-
result.push({
|
|
57
|
-
type,
|
|
58
|
-
...data,
|
|
59
|
-
user_id: data.user_id,
|
|
60
|
-
message: await processMessages.call(this, uin, data.user_id, "private", data.content || []),
|
|
61
|
-
});
|
|
62
|
-
break;
|
|
63
|
-
}
|
|
64
|
-
case "music": {
|
|
65
|
-
if (String(item.data.platform) === "custom") {
|
|
66
|
-
item.data.platform = item.data["subtype"]; // gocq 的平台数据存储在 subtype 内,兼容 icqq 时要求前端必须发送 id 字段
|
|
67
|
-
}
|
|
68
|
-
const { type, data } = item;
|
|
69
|
-
await shareMusicCustom_1.shareMusic.call(this[target_type === "private" ? "pickFriend" : "pickGroup"](target_id), {
|
|
70
|
-
type,
|
|
71
|
-
...data,
|
|
72
|
-
});
|
|
73
|
-
break;
|
|
74
|
-
}
|
|
75
|
-
case "share": {
|
|
76
|
-
await this[target_type === "private" ? "pickFriend" : "pickGroup"](target_id).shareUrl(item.data);
|
|
77
|
-
break;
|
|
78
|
-
}
|
|
79
|
-
case "video":
|
|
80
|
-
case "audio":
|
|
81
|
-
case "image": {
|
|
82
|
-
if (item["file_id"]?.startsWith("base64://"))
|
|
83
|
-
item["file_id"] = Buffer.from(item["file_id"].slice(9), "base64");
|
|
84
|
-
if (item["file"]?.startsWith("base64://"))
|
|
85
|
-
item["file"] = Buffer.from(item["file"].slice(9), "base64");
|
|
86
|
-
result.push({
|
|
87
|
-
type: type,
|
|
88
|
-
...data,
|
|
89
|
-
...other,
|
|
90
|
-
});
|
|
91
|
-
break;
|
|
92
|
-
}
|
|
93
|
-
case "reply": {
|
|
94
|
-
const oneBot = this.getOneBot(uin);
|
|
95
|
-
const message_id = oneBot.V11.getStrByInt("message_id", data.id);
|
|
96
|
-
const msg = await oneBot.internal.getMsg(message_id);
|
|
97
|
-
result.push({
|
|
98
|
-
type: "quote",
|
|
99
|
-
...msg,
|
|
100
|
-
});
|
|
101
|
-
break;
|
|
102
|
-
}
|
|
103
|
-
default: {
|
|
104
|
-
result.push({
|
|
105
|
-
type: type,
|
|
106
|
-
...data,
|
|
107
|
-
...other,
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
return result;
|
|
113
|
-
}
|
|
49
|
+
const utils_1 = require("../../adapters/icqq/utils");
|
|
114
50
|
class IcqqAdapter extends adapter_1.Adapter {
|
|
115
51
|
constructor(app, config) {
|
|
116
52
|
super(app, "icqq", config);
|
|
@@ -166,6 +102,10 @@ class IcqqAdapter extends adapter_1.Adapter {
|
|
|
166
102
|
detail_type: data.message_type || data.notice_type || data.request_type,
|
|
167
103
|
platform: "qq",
|
|
168
104
|
...data,
|
|
105
|
+
sender: {
|
|
106
|
+
...(data?.sender || {}),
|
|
107
|
+
},
|
|
108
|
+
user_id: data.user_id || data.sender?.user_id,
|
|
169
109
|
};
|
|
170
110
|
if (data.source) {
|
|
171
111
|
const message_id = data.message_type === "group"
|
|
@@ -199,7 +139,7 @@ class IcqqAdapter extends adapter_1.Adapter {
|
|
|
199
139
|
let quote;
|
|
200
140
|
if (source)
|
|
201
141
|
quote = await client.getMsg(source);
|
|
202
|
-
const result = await client.sendPrivateMsg(parseInt(user_id), await processMessages.call(this, uin, user_id, "private", message), quote);
|
|
142
|
+
const result = await client.sendPrivateMsg(parseInt(user_id), await utils_1.processMessages.call(this, uin, user_id, "private", message), quote);
|
|
203
143
|
return {
|
|
204
144
|
message_id: version === "V11"
|
|
205
145
|
? this.oneBots.get(uin).V11.transformToInt("message_id", result.message_id)
|
|
@@ -216,7 +156,7 @@ class IcqqAdapter extends adapter_1.Adapter {
|
|
|
216
156
|
let quote;
|
|
217
157
|
if (source)
|
|
218
158
|
quote = await client.getMsg(source);
|
|
219
|
-
const result = await client.sendGroupMsg(parseInt(group_id), await processMessages.call(this, uin, group_id, "group", message), quote);
|
|
159
|
+
const result = await client.sendGroupMsg(parseInt(group_id), await utils_1.processMessages.call(this, uin, group_id, "group", message), quote);
|
|
220
160
|
return {
|
|
221
161
|
message_id: version === "V11"
|
|
222
162
|
? this.oneBots.get(uin).V11.transformToInt("message_id", result.message_id)
|
|
@@ -227,7 +167,7 @@ class IcqqAdapter extends adapter_1.Adapter {
|
|
|
227
167
|
const [target_id, message, source] = args;
|
|
228
168
|
const client = this.oneBots.get(uin)?.internal;
|
|
229
169
|
const [guild_id, channel_id] = target_id.split(":");
|
|
230
|
-
const result = await client.sendGuildMsg(guild_id, channel_id, await processMessages.call(this, uin, target_id, "channel", message));
|
|
170
|
+
const result = await client.sendGuildMsg(guild_id, channel_id, await utils_1.processMessages.call(this, uin, target_id, "channel", message));
|
|
231
171
|
const message_id = `${result.seq}:${result.rand}:${result.time}`;
|
|
232
172
|
return {
|
|
233
173
|
message_id: version === "V11"
|
|
@@ -256,8 +196,15 @@ class IcqqAdapter extends adapter_1.Adapter {
|
|
|
256
196
|
throw onebot_1.OneBot.UnsupportedMethodError;
|
|
257
197
|
}
|
|
258
198
|
}
|
|
259
|
-
fromSegment(version, segment) {
|
|
260
|
-
return []
|
|
199
|
+
fromSegment(onebot, version, segment) {
|
|
200
|
+
return []
|
|
201
|
+
.concat(segment)
|
|
202
|
+
.map(segment => {
|
|
203
|
+
if (version === "V12" && ["image", "video", "audio"].includes(segment.type))
|
|
204
|
+
return onebot.V12.transformMedia(segment);
|
|
205
|
+
return segment;
|
|
206
|
+
})
|
|
207
|
+
.map(item => {
|
|
261
208
|
if (typeof item === "string")
|
|
262
209
|
return item;
|
|
263
210
|
const { type, data } = item;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
share?: ShareElem;
|
|
6
|
-
}>;
|
|
1
|
+
import { MessageElem } from "@icqqjs/icqq";
|
|
2
|
+
import { OneBot } from "../../onebot";
|
|
3
|
+
import IcqqAdapter from "../../adapters/icqq/index";
|
|
4
|
+
export declare function processMessages(this: IcqqAdapter, uin: string, target_id: number, target_type: "group" | "private", list: OneBot.Segment<OneBot.Version>[]): Promise<MessageElem[]>;
|
|
@@ -1,26 +1,68 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
const
|
|
5
|
-
async function
|
|
6
|
-
let
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
exports.processMessages = void 0;
|
|
4
|
+
const shareMusicCustom_1 = require("./shareMusicCustom");
|
|
5
|
+
async function processMessages(uin, target_id, target_type, list) {
|
|
6
|
+
let result = [];
|
|
7
|
+
for (const item of list) {
|
|
8
|
+
const { type, data, ...other } = item;
|
|
9
|
+
switch (type) {
|
|
10
|
+
case "node": {
|
|
11
|
+
result.push({
|
|
12
|
+
type,
|
|
13
|
+
...data,
|
|
14
|
+
user_id: data.user_id,
|
|
15
|
+
message: await processMessages.call(this, uin, data.user_id, "private", data.content || []),
|
|
16
|
+
});
|
|
17
|
+
break;
|
|
18
|
+
}
|
|
19
|
+
case "music": {
|
|
20
|
+
if (String(item.data.platform) === "custom") {
|
|
21
|
+
item.data.platform = item.data["subtype"]; // gocq 的平台数据存储在 subtype 内,兼容 icqq 时要求前端必须发送 id 字段
|
|
22
|
+
}
|
|
23
|
+
const { type, data } = item;
|
|
24
|
+
await shareMusicCustom_1.shareMusic.call(this[target_type === "private" ? "pickFriend" : "pickGroup"](target_id), {
|
|
25
|
+
type,
|
|
26
|
+
...data,
|
|
27
|
+
});
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
case "share": {
|
|
31
|
+
await this[target_type === "private" ? "pickFriend" : "pickGroup"](target_id).shareUrl(item.data);
|
|
32
|
+
break;
|
|
33
|
+
}
|
|
34
|
+
case "video":
|
|
35
|
+
case "audio":
|
|
36
|
+
case "image": {
|
|
37
|
+
item["file"] = item["file"] || item["file_id"] || item["url"];
|
|
38
|
+
if (item["file"]?.startsWith("base64://"))
|
|
39
|
+
item["file"] = Buffer.from(item["file"].slice(9), "base64");
|
|
40
|
+
result.push({
|
|
41
|
+
type: type,
|
|
42
|
+
...data,
|
|
43
|
+
...other,
|
|
44
|
+
});
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
case "reply": {
|
|
48
|
+
const oneBot = this.getOneBot(uin);
|
|
49
|
+
const message_id = oneBot.V11.getStrByInt("message_id", data.id);
|
|
50
|
+
const msg = await oneBot.internal.getMsg(message_id);
|
|
51
|
+
result.push({
|
|
52
|
+
type: "quote",
|
|
53
|
+
...msg,
|
|
54
|
+
});
|
|
55
|
+
break;
|
|
56
|
+
}
|
|
57
|
+
default: {
|
|
58
|
+
result.push({
|
|
59
|
+
type: type,
|
|
60
|
+
...data,
|
|
61
|
+
...other,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
11
64
|
}
|
|
12
65
|
}
|
|
13
|
-
|
|
14
|
-
if (share)
|
|
15
|
-
(0, utils_1.remove)(elements, share);
|
|
16
|
-
for (const element of elements) {
|
|
17
|
-
if (["image", "video", "audio"].includes(element.type)) {
|
|
18
|
-
if (element["file_id"]?.startsWith("base64://"))
|
|
19
|
-
element["file_id"] = Buffer.from(element["file_id"].slice(9), "base64");
|
|
20
|
-
if (element["file"]?.startsWith("base64://"))
|
|
21
|
-
element["file"] = Buffer.from(element["file"].slice(9), "base64");
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
return { element: elements, share, music };
|
|
66
|
+
return result;
|
|
25
67
|
}
|
|
26
|
-
exports.
|
|
68
|
+
exports.processMessages = processMessages;
|
|
@@ -15,7 +15,7 @@ export default class QQAdapter extends Adapter<"qq", Sendable> {
|
|
|
15
15
|
sendDirectMessage<V extends OneBot.Version>(uin: string, version: V, args: [string, Sendable, string]): Promise<OneBot.MessageRet<V>>;
|
|
16
16
|
deleteMessage(uin: string, message_id: string): Promise<boolean>;
|
|
17
17
|
call(uin: string, version: string, method: string, args?: any[]): Promise<any>;
|
|
18
|
-
fromSegment<V extends OneBot.Version>(version: V, segment: OneBot.Segment<V> | OneBot.Segment<V>[]): Sendable;
|
|
18
|
+
fromSegment<V extends OneBot.Version>(onebot: OneBot<Bot>, version: V, segment: OneBot.Segment<V> | OneBot.Segment<V>[]): Sendable;
|
|
19
19
|
toSegment<V extends OneBot.Version, M = Sendable>(version: V, message: M): OneBot.Segment<V>[];
|
|
20
20
|
formatEventPayload<V extends OneBot.Version>(uin: string, version: V, event: string, data: any): OneBot.Payload<V>;
|
|
21
21
|
start(uin: string): Promise<void>;
|
package/lib/adapters/qq/index.js
CHANGED
|
@@ -175,8 +175,15 @@ class QQAdapter extends adapter_1.Adapter {
|
|
|
175
175
|
throw new Error(`call internal method error:${e.message}`);
|
|
176
176
|
}
|
|
177
177
|
}
|
|
178
|
-
fromSegment(version, segment) {
|
|
179
|
-
return []
|
|
178
|
+
fromSegment(onebot, version, segment) {
|
|
179
|
+
return []
|
|
180
|
+
.concat(segment)
|
|
181
|
+
.map(segment => {
|
|
182
|
+
if (version === "V12" && ["image", "video", "audio"].includes(segment.type))
|
|
183
|
+
return onebot.V12.transformMedia(segment);
|
|
184
|
+
return segment;
|
|
185
|
+
})
|
|
186
|
+
.map(item => {
|
|
180
187
|
if (typeof item === "string")
|
|
181
188
|
return item;
|
|
182
189
|
const { type, data } = item;
|
|
@@ -215,6 +222,10 @@ class QQAdapter extends adapter_1.Adapter {
|
|
|
215
222
|
platform: "qq",
|
|
216
223
|
time: data.timestamp,
|
|
217
224
|
...data,
|
|
225
|
+
sender: {
|
|
226
|
+
...(data?.sender || {}),
|
|
227
|
+
},
|
|
228
|
+
user_id: data.user_id || data.sender?.user_id,
|
|
218
229
|
};
|
|
219
230
|
if (data.message_id) {
|
|
220
231
|
data.message_id = `${data.message_type}:${data.channel_id || data.guild_id || data.group_id || data.user_id}:${data.message_id}`;
|
|
@@ -14,7 +14,7 @@ export default class WechatAdapter extends Adapter<"wechat", Sendable> {
|
|
|
14
14
|
sendPrivateMessage<V extends OneBot.Version>(uin: string, version: V, args: [string, Sendable, string]): Promise<OneBot.MessageRet<V>>;
|
|
15
15
|
sendGroupMessage<V extends OneBot.Version>(uin: string, version: V, args: [string, Sendable, string]): Promise<OneBot.MessageRet<V>>;
|
|
16
16
|
deleteMessage<V extends OneBot.Version>(uin: string, version: V, [str]: [string]): Promise<boolean>;
|
|
17
|
-
fromSegment<V extends OneBot.Version>(version: V, segment: OneBot.Segment<V> | OneBot.Segment<V>[]): Sendable;
|
|
17
|
+
fromSegment<V extends OneBot.Version>(onebot: OneBot<Client>, version: V, segment: OneBot.Segment<V> | OneBot.Segment<V>[]): Sendable;
|
|
18
18
|
toSegment<V extends OneBot.Version>(version: V, message: Sendable): OneBot.Segment<V>[];
|
|
19
19
|
getFriendList<V extends OneBot.Version>(uin: string, version: V): Promise<OneBot.UserInfo<V>[]>;
|
|
20
20
|
getGroupList<V extends OneBot.Version>(uin: string, version: V): Promise<OneBot.GroupInfo<V>[]>;
|
|
@@ -143,8 +143,15 @@ class WechatAdapter extends adapter_1.Adapter {
|
|
|
143
143
|
return bot.internal.recallMsg(username, message_idArr.join(":"));
|
|
144
144
|
}
|
|
145
145
|
}
|
|
146
|
-
fromSegment(version, segment) {
|
|
147
|
-
return []
|
|
146
|
+
fromSegment(onebot, version, segment) {
|
|
147
|
+
return []
|
|
148
|
+
.concat(segment)
|
|
149
|
+
.map(segment => {
|
|
150
|
+
if (version === "V12" && ["image", "video", "audio"].includes(segment.type))
|
|
151
|
+
return onebot.V12.transformMedia(segment);
|
|
152
|
+
return segment;
|
|
153
|
+
})
|
|
154
|
+
.map(item => {
|
|
148
155
|
if (typeof item === "string")
|
|
149
156
|
return item;
|
|
150
157
|
const { type, data } = item;
|
|
@@ -212,6 +219,10 @@ class WechatAdapter extends adapter_1.Adapter {
|
|
|
212
219
|
friend: data.friend?.info,
|
|
213
220
|
time: data.timestamp,
|
|
214
221
|
...data,
|
|
222
|
+
sender: {
|
|
223
|
+
...(data?.sender || {}),
|
|
224
|
+
},
|
|
225
|
+
user_id: data.user_id || data.sender?.user_id,
|
|
215
226
|
};
|
|
216
227
|
delete result.bot;
|
|
217
228
|
delete result.c;
|
package/lib/service/V11/index.js
CHANGED
|
@@ -503,7 +503,7 @@ class V11 extends service_1.Service {
|
|
|
503
503
|
res.reply[0].data.platform = res.reply[0].data.type;
|
|
504
504
|
delete res.reply[0].data.type;
|
|
505
505
|
}
|
|
506
|
-
res.reply = this.adapter.fromSegment("V11", res.reply);
|
|
506
|
+
res.reply = this.adapter.fromSegment(this.oneBot, "V11", res.reply);
|
|
507
507
|
}
|
|
508
508
|
this.action[action].apply(this, [id, res.reply, res.auto_escape]);
|
|
509
509
|
}
|
|
@@ -577,7 +577,7 @@ class V11 extends service_1.Service {
|
|
|
577
577
|
}
|
|
578
578
|
params[k] = this.adapter.fromCqcode("V11", params[k]);
|
|
579
579
|
}
|
|
580
|
-
params[k] = this.adapter.fromSegment("V11", params[k]);
|
|
580
|
+
params[k] = this.adapter.fromSegment(this.oneBot, "V11", params[k]);
|
|
581
581
|
params["message_id"] =
|
|
582
582
|
params[k].find(e => e.type === "reply")?.id || params["message_id"];
|
|
583
583
|
}
|
|
@@ -668,7 +668,6 @@ exports.V11 = V11;
|
|
|
668
668
|
reconnect_interval: 3,
|
|
669
669
|
use_http: true,
|
|
670
670
|
enable_cors: true,
|
|
671
|
-
enable_reissue: false,
|
|
672
671
|
use_ws: true,
|
|
673
672
|
http_reverse: [],
|
|
674
673
|
ws_reverse: [],
|
|
@@ -44,4 +44,5 @@ export declare class CommonAction {
|
|
|
44
44
|
uploadFileFragmented(this: V12, stage: "prepare" | "transfer" | "finish", name?: string, total_size?: number, file_id?: string, offset?: number, data?: string, sha256?: string): string | true;
|
|
45
45
|
getFile(this: V12, file_id: string): V12.FileInfo;
|
|
46
46
|
sendLike(this: V12, user_id: string, times?: number): Promise<any>;
|
|
47
|
+
imageOcr(this: V12, file: string): Promise<any>;
|
|
47
48
|
}
|
|
@@ -133,5 +133,8 @@ class CommonAction {
|
|
|
133
133
|
sendLike(user_id, times = 1) {
|
|
134
134
|
return this.adapter.call(this.oneBot.uin, "V12", "sendLike", [user_id, times]);
|
|
135
135
|
}
|
|
136
|
+
imageOcr(file) {
|
|
137
|
+
return this.adapter.call(this.oneBot.uin, "V12", "imageOcr", [file]);
|
|
138
|
+
}
|
|
136
139
|
}
|
|
137
140
|
exports.CommonAction = CommonAction;
|
|
@@ -49,6 +49,7 @@ export declare class V12 extends Service<"V12"> implements OneBot.Base {
|
|
|
49
49
|
};
|
|
50
50
|
system_online(data: any): void;
|
|
51
51
|
dispatch(data: Record<string, any>): Promise<void>;
|
|
52
|
+
transformMedia(segment: V12.Segment): V12.Segment;
|
|
52
53
|
apply(req: V12.RequestAction): Promise<string>;
|
|
53
54
|
private httpAuth;
|
|
54
55
|
private httpRequestHandler;
|
package/lib/service/V12/index.js
CHANGED
|
@@ -401,6 +401,18 @@ class V12 extends service_1.Service {
|
|
|
401
401
|
return;
|
|
402
402
|
this.emit("dispatch", payload);
|
|
403
403
|
}
|
|
404
|
+
transformMedia(segment) {
|
|
405
|
+
const file = this.getFile(segment.data.file_id);
|
|
406
|
+
if (file)
|
|
407
|
+
return {
|
|
408
|
+
type: segment.type,
|
|
409
|
+
data: {
|
|
410
|
+
...segment.data,
|
|
411
|
+
file_id: `base64://${file.data}`,
|
|
412
|
+
},
|
|
413
|
+
};
|
|
414
|
+
return segment;
|
|
415
|
+
}
|
|
404
416
|
async apply(req) {
|
|
405
417
|
let { action = "", params = {}, echo } = req;
|
|
406
418
|
action = (0, utils_2.toLine)(action);
|
|
@@ -445,7 +457,7 @@ class V12 extends service_1.Service {
|
|
|
445
457
|
}
|
|
446
458
|
params[k] = this.adapter.fromCqcode("V12", params[k]);
|
|
447
459
|
}
|
|
448
|
-
params[k] = this.adapter.fromSegment("V12", params[k]);
|
|
460
|
+
params[k] = this.adapter.fromSegment(this.oneBot, "V12", params[k]);
|
|
449
461
|
}
|
|
450
462
|
args.push(params[k]);
|
|
451
463
|
}
|
package/package.json
CHANGED
|
File without changes
|
|
File without changes
|