@satorijs/adapter-lark 3.7.4 → 3.8.1
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/bot.d.ts +2 -1
- package/lib/index.cjs +107 -80
- package/lib/types/api.d.ts +17 -17
- package/lib/types/internal.d.ts +1 -1
- package/package.json +5 -5
- package/src/bot.ts +31 -9
- package/src/http.ts +1 -21
- package/src/message.ts +11 -1
- package/src/types/api.ts +66 -60
- package/src/types/internal.ts +9 -2
- package/src/utils.ts +13 -11
- package/lib/index.cjs.map +0 -6
package/lib/bot.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export declare class LarkBot<C extends Context = Context> extends Bot<C, LarkBot
|
|
|
11
11
|
assetsQuester: HTTP;
|
|
12
12
|
internal: Internal;
|
|
13
13
|
constructor(ctx: C, config: LarkBot.Config);
|
|
14
|
-
|
|
14
|
+
getResourceUrl(type: string, message_id: string, file_key: string): string;
|
|
15
15
|
initialize(): Promise<void>;
|
|
16
16
|
private refreshToken;
|
|
17
17
|
get token(): string;
|
|
@@ -43,6 +43,7 @@ export declare class LarkBot<C extends Context = Context> extends Bot<C, LarkBot
|
|
|
43
43
|
}[];
|
|
44
44
|
next: string;
|
|
45
45
|
}>;
|
|
46
|
+
createUpload(...uploads: Universal.Upload[]): Promise<string[]>;
|
|
46
47
|
}
|
|
47
48
|
export declare namespace LarkBot {
|
|
48
49
|
interface Config extends HttpServer.Options, HTTP.Config {
|
package/lib/index.cjs
CHANGED
|
@@ -42,7 +42,6 @@ module.exports = __toCommonJS(src_exports);
|
|
|
42
42
|
var import_core5 = require("@satorijs/core");
|
|
43
43
|
|
|
44
44
|
// src/http.ts
|
|
45
|
-
var import_node_stream = require("node:stream");
|
|
46
45
|
var import_core2 = require("@satorijs/core");
|
|
47
46
|
|
|
48
47
|
// src/utils.ts
|
|
@@ -61,7 +60,6 @@ function adaptSender(sender, session) {
|
|
|
61
60
|
__name(adaptSender, "adaptSender");
|
|
62
61
|
async function adaptMessage(bot, data, session, details = true) {
|
|
63
62
|
const json = JSON.parse(data.message.content);
|
|
64
|
-
const assetEndpoint = (0, import_core.trimSlash)(bot.config.selfUrl ?? bot.ctx.server.config.selfUrl) + bot.config.path + "/assets";
|
|
65
63
|
const content = [];
|
|
66
64
|
switch (data.message.message_type) {
|
|
67
65
|
case "text": {
|
|
@@ -81,16 +79,18 @@ async function adaptMessage(bot, data, session, details = true) {
|
|
|
81
79
|
break;
|
|
82
80
|
}
|
|
83
81
|
case "image":
|
|
84
|
-
content.push(import_core.h.image(
|
|
82
|
+
content.push(import_core.h.image(bot.getResourceUrl("image", data.message.message_id, json.image_key)));
|
|
85
83
|
break;
|
|
86
84
|
case "audio":
|
|
87
|
-
content.push(import_core.h.audio(
|
|
85
|
+
content.push(import_core.h.audio(bot.getResourceUrl("file", data.message.message_id, json.file_key)));
|
|
88
86
|
break;
|
|
89
87
|
case "media":
|
|
90
|
-
content.push(import_core.h.video(
|
|
88
|
+
content.push(import_core.h.video(bot.getResourceUrl("file", data.message.message_id, json.file_key), {
|
|
89
|
+
poster: json.image_key
|
|
90
|
+
}));
|
|
91
91
|
break;
|
|
92
92
|
case "file":
|
|
93
|
-
content.push(import_core.h.file(
|
|
93
|
+
content.push(import_core.h.file(bot.getResourceUrl("file", data.message.message_id, json.file_key)));
|
|
94
94
|
break;
|
|
95
95
|
}
|
|
96
96
|
session.timestamp = +data.message.create_time;
|
|
@@ -165,7 +165,6 @@ async function adaptSession(bot, body) {
|
|
|
165
165
|
__name(adaptSession, "adaptSession");
|
|
166
166
|
async function decodeMessage(bot, body, details = true) {
|
|
167
167
|
const json = JSON.parse(body.body.content);
|
|
168
|
-
const assetEndpoint = (0, import_core.trimSlash)(bot.config.selfUrl ?? bot.ctx.server.config.selfUrl) + bot.config.path + "/assets";
|
|
169
168
|
const content = [];
|
|
170
169
|
switch (body.msg_type) {
|
|
171
170
|
case "text": {
|
|
@@ -185,16 +184,18 @@ async function decodeMessage(bot, body, details = true) {
|
|
|
185
184
|
break;
|
|
186
185
|
}
|
|
187
186
|
case "image":
|
|
188
|
-
content.push(import_core.h.image(
|
|
187
|
+
content.push(import_core.h.image(bot.getResourceUrl("image", body.message_id, json.image_key)));
|
|
189
188
|
break;
|
|
190
189
|
case "audio":
|
|
191
|
-
content.push(import_core.h.audio(
|
|
190
|
+
content.push(import_core.h.audio(bot.getResourceUrl("file", body.message_id, json.file_key)));
|
|
192
191
|
break;
|
|
193
192
|
case "media":
|
|
194
|
-
content.push(import_core.h.video(
|
|
193
|
+
content.push(import_core.h.video(bot.getResourceUrl("file", body.message_id, json.file_key), {
|
|
194
|
+
poster: json.image_key
|
|
195
|
+
}));
|
|
195
196
|
break;
|
|
196
197
|
case "file":
|
|
197
|
-
content.push(import_core.h.file(
|
|
198
|
+
content.push(import_core.h.file(bot.getResourceUrl("file", body.message_id, json.file_key)));
|
|
198
199
|
break;
|
|
199
200
|
}
|
|
200
201
|
return {
|
|
@@ -331,29 +332,13 @@ var HttpServer = class extends import_core2.Adapter {
|
|
|
331
332
|
ctx.body = {};
|
|
332
333
|
return ctx.status = 200;
|
|
333
334
|
});
|
|
334
|
-
bot.ctx.server.get(path + "/assets/:type/:message_id/:key", async (ctx) => {
|
|
335
|
-
const type = ctx.params.type === "image" ? "image" : "file";
|
|
336
|
-
const key = ctx.params.key;
|
|
337
|
-
const messageId = ctx.params.message_id;
|
|
338
|
-
const selfId = ctx.request.query.self_id;
|
|
339
|
-
const bot2 = this.bots.find((bot3) => bot3.selfId === selfId);
|
|
340
|
-
if (!bot2) return ctx.status = 404;
|
|
341
|
-
const resp = await bot2.http(`/im/v1/messages/${messageId}/resources/${key}`, {
|
|
342
|
-
method: "GET",
|
|
343
|
-
params: { type },
|
|
344
|
-
responseType: "stream"
|
|
345
|
-
});
|
|
346
|
-
ctx.set("content-type", resp.headers.get("content-type"));
|
|
347
|
-
ctx.status = 200;
|
|
348
|
-
ctx.response.body = import_node_stream.Readable.fromWeb(resp.data);
|
|
349
|
-
});
|
|
350
335
|
}
|
|
351
336
|
async dispatchSession(body) {
|
|
352
337
|
const { header } = body;
|
|
353
338
|
if (!header) return;
|
|
354
339
|
const { app_id, event_type } = header;
|
|
355
340
|
body.type = event_type;
|
|
356
|
-
const bot = this.bots.find((bot2) => bot2.appId === app_id);
|
|
341
|
+
const bot = this.bots.find((bot2) => bot2.config.appId === app_id);
|
|
357
342
|
const session = await adaptSession(bot, body);
|
|
358
343
|
bot.dispatch(session);
|
|
359
344
|
}
|
|
@@ -488,6 +473,15 @@ var LarkMessageEncoder = class extends import_core3.MessageEncoder {
|
|
|
488
473
|
}
|
|
489
474
|
async sendFile(_type, attrs) {
|
|
490
475
|
const url = attrs.src || attrs.url;
|
|
476
|
+
const prefix = this.bot.getInternalUrl("/im/v1/files/");
|
|
477
|
+
if (url.startsWith(prefix)) {
|
|
478
|
+
const file_key2 = url.slice(prefix.length);
|
|
479
|
+
await this.post({
|
|
480
|
+
msg_type: _type === "video" ? "media" : _type,
|
|
481
|
+
content: JSON.stringify({ file_key: file_key2 })
|
|
482
|
+
});
|
|
483
|
+
return;
|
|
484
|
+
}
|
|
491
485
|
const { filename, type, data } = await this.bot.assetsQuester.file(url);
|
|
492
486
|
let file_type;
|
|
493
487
|
if (_type === "audio") {
|
|
@@ -778,9 +772,16 @@ var Internal = class _Internal {
|
|
|
778
772
|
} else if (args.length > 1) {
|
|
779
773
|
throw new Error(`too many arguments for ${path}, received ${raw}`);
|
|
780
774
|
}
|
|
775
|
+
if (options.type === "binary") {
|
|
776
|
+
config.responseType = "arraybuffer";
|
|
777
|
+
}
|
|
781
778
|
const response = await this.bot.http(method, url, config);
|
|
782
779
|
this._assertResponse(response);
|
|
783
|
-
|
|
780
|
+
if (options.type === "json-body" || options.type === "binary") {
|
|
781
|
+
return response.data;
|
|
782
|
+
} else {
|
|
783
|
+
return response.data.data;
|
|
784
|
+
}
|
|
784
785
|
};
|
|
785
786
|
}
|
|
786
787
|
}
|
|
@@ -805,7 +806,54 @@ Internal.define({
|
|
|
805
806
|
"/auth/v3/app_ticket/resend": {
|
|
806
807
|
POST: "appTicketResendAuth"
|
|
807
808
|
}
|
|
808
|
-
}, {
|
|
809
|
+
}, { type: "json-body" });
|
|
810
|
+
Internal.define({
|
|
811
|
+
"/im/v1/messages/{message_id}/resources/{file_key}": {
|
|
812
|
+
GET: "getImMessageResource"
|
|
813
|
+
},
|
|
814
|
+
"/im/v1/images/{image_key}": {
|
|
815
|
+
GET: "getImImage"
|
|
816
|
+
},
|
|
817
|
+
"/im/v1/files/{file_key}": {
|
|
818
|
+
GET: "getImFile"
|
|
819
|
+
},
|
|
820
|
+
"/drive/v1/medias/{file_token}/download": {
|
|
821
|
+
GET: "downloadDrivev1Media"
|
|
822
|
+
},
|
|
823
|
+
"/drive/v1/files/{file_token}/download": {
|
|
824
|
+
GET: "downloadDrivev1File"
|
|
825
|
+
},
|
|
826
|
+
"/vc/v1/exports/download": {
|
|
827
|
+
GET: "downloadVcExport"
|
|
828
|
+
},
|
|
829
|
+
"/attendance/v1/files/{file_id}/download": {
|
|
830
|
+
GET: "downloadAttendanceFile"
|
|
831
|
+
},
|
|
832
|
+
"/helpdesk/v1/ticket_images": {
|
|
833
|
+
GET: "ticketImageHelpdeskTicket"
|
|
834
|
+
},
|
|
835
|
+
"/helpdesk/v1/faqs/{id}/image/{image_key}": {
|
|
836
|
+
GET: "faqImageHelpdeskFaq"
|
|
837
|
+
},
|
|
838
|
+
"/ehr/v1/attachments/{token}": {
|
|
839
|
+
GET: "getEhrAttachment"
|
|
840
|
+
},
|
|
841
|
+
"/corehr/v1/files/{id}": {
|
|
842
|
+
GET: "getCorehrFile"
|
|
843
|
+
},
|
|
844
|
+
"/acs/v1/users/{user_id}/face": {
|
|
845
|
+
GET: "getAcsUserFace"
|
|
846
|
+
},
|
|
847
|
+
"/acs/v1/access_records/{access_record_id}/access_photo": {
|
|
848
|
+
GET: "getAcsAccessRecordAccessPhoto"
|
|
849
|
+
},
|
|
850
|
+
"/lingo/v1/files/{file_token}/download": {
|
|
851
|
+
GET: "downloadLingoFile"
|
|
852
|
+
},
|
|
853
|
+
"/baike/v1/files/{file_token}/download": {
|
|
854
|
+
GET: "downloadBaikeFile"
|
|
855
|
+
}
|
|
856
|
+
}, { type: "binary" });
|
|
809
857
|
Internal.define({
|
|
810
858
|
"/event/v1/outbound_ip": {
|
|
811
859
|
GET: "listEventOutboundIp"
|
|
@@ -1013,9 +1061,6 @@ Internal.define({
|
|
|
1013
1061
|
"/im/v1/messages/{message_id}/read_users": {
|
|
1014
1062
|
GET: "readUsersImMessage"
|
|
1015
1063
|
},
|
|
1016
|
-
"/im/v1/messages/{message_id}/resources/{file_key}": {
|
|
1017
|
-
GET: "getImMessageResource"
|
|
1018
|
-
},
|
|
1019
1064
|
"/im/v1/messages/{message_id}/urgent_app": {
|
|
1020
1065
|
PATCH: "urgentAppImMessage"
|
|
1021
1066
|
},
|
|
@@ -1034,12 +1079,6 @@ Internal.define({
|
|
|
1034
1079
|
"/im/v1/batch_messages/{batch_message_id}/get_progress": {
|
|
1035
1080
|
GET: "getProgressImBatchMessage"
|
|
1036
1081
|
},
|
|
1037
|
-
"/im/v1/images/{image_key}": {
|
|
1038
|
-
GET: "getImImage"
|
|
1039
|
-
},
|
|
1040
|
-
"/im/v1/files/{file_key}": {
|
|
1041
|
-
GET: "getImFile"
|
|
1042
|
-
},
|
|
1043
1082
|
"/im/v1/messages/{message_id}/reactions": {
|
|
1044
1083
|
POST: "createImMessageReaction",
|
|
1045
1084
|
GET: "listImMessageReaction"
|
|
@@ -1153,9 +1192,6 @@ Internal.define({
|
|
|
1153
1192
|
"/drive/v1/files/task_check": {
|
|
1154
1193
|
GET: "taskCheckDrivev1File"
|
|
1155
1194
|
},
|
|
1156
|
-
"/drive/v1/medias/{file_token}/download": {
|
|
1157
|
-
GET: "downloadDrivev1Media"
|
|
1158
|
-
},
|
|
1159
1195
|
"/drive/v1/medias/batch_get_tmp_download_url": {
|
|
1160
1196
|
GET: "batchGetTmpDownloadUrlDrivev1Media"
|
|
1161
1197
|
},
|
|
@@ -1180,9 +1216,6 @@ Internal.define({
|
|
|
1180
1216
|
"/drive/v1/files/upload_finish": {
|
|
1181
1217
|
POST: "uploadFinishDrivev1File"
|
|
1182
1218
|
},
|
|
1183
|
-
"/drive/v1/files/{file_token}/download": {
|
|
1184
|
-
GET: "downloadDrivev1File"
|
|
1185
|
-
},
|
|
1186
1219
|
"/drive/v1/import_tasks": {
|
|
1187
1220
|
POST: "createDrivev1ImportTask"
|
|
1188
1221
|
},
|
|
@@ -1653,9 +1686,6 @@ Internal.define({
|
|
|
1653
1686
|
"/vc/v1/exports/{task_id}": {
|
|
1654
1687
|
GET: "getVcExport"
|
|
1655
1688
|
},
|
|
1656
|
-
"/vc/v1/exports/download": {
|
|
1657
|
-
GET: "downloadVcExport"
|
|
1658
|
-
},
|
|
1659
1689
|
"/vc/v1/room_levels": {
|
|
1660
1690
|
POST: "createVcRoomLevel",
|
|
1661
1691
|
GET: "listVcRoomLevel"
|
|
@@ -1801,9 +1831,6 @@ Internal.define({
|
|
|
1801
1831
|
"/attendance/v1/user_settings/query": {
|
|
1802
1832
|
GET: "queryAttendanceUserSetting"
|
|
1803
1833
|
},
|
|
1804
|
-
"/attendance/v1/files/{file_id}/download": {
|
|
1805
|
-
GET: "downloadAttendanceFile"
|
|
1806
|
-
},
|
|
1807
1834
|
"/attendance/v1/leave_employ_expire_records/{leave_id}": {
|
|
1808
1835
|
GET: "getAttendanceLeaveEmployExpireRecord"
|
|
1809
1836
|
},
|
|
@@ -1930,9 +1957,6 @@ Internal.define({
|
|
|
1930
1957
|
"/helpdesk/v1/tickets": {
|
|
1931
1958
|
GET: "listHelpdeskTicket"
|
|
1932
1959
|
},
|
|
1933
|
-
"/helpdesk/v1/ticket_images": {
|
|
1934
|
-
GET: "ticketImageHelpdeskTicket"
|
|
1935
|
-
},
|
|
1936
1960
|
"/helpdesk/v1/tickets/{ticket_id}/answer_user_query": {
|
|
1937
1961
|
POST: "answerUserQueryHelpdeskTicket"
|
|
1938
1962
|
},
|
|
@@ -1964,9 +1988,6 @@ Internal.define({
|
|
|
1964
1988
|
PATCH: "patchHelpdeskFaq",
|
|
1965
1989
|
GET: "getHelpdeskFaq"
|
|
1966
1990
|
},
|
|
1967
|
-
"/helpdesk/v1/faqs/{id}/image/{image_key}": {
|
|
1968
|
-
GET: "faqImageHelpdeskFaq"
|
|
1969
|
-
},
|
|
1970
1991
|
"/helpdesk/v1/faqs/search": {
|
|
1971
1992
|
GET: "searchHelpdeskFaq"
|
|
1972
1993
|
},
|
|
@@ -2430,9 +2451,6 @@ Internal.define({
|
|
|
2430
2451
|
"/ehr/v1/employees": {
|
|
2431
2452
|
GET: "listEhrEmployee"
|
|
2432
2453
|
},
|
|
2433
|
-
"/ehr/v1/attachments/{token}": {
|
|
2434
|
-
GET: "getEhrAttachment"
|
|
2435
|
-
},
|
|
2436
2454
|
"/corehr/v2/basic_info/nationalities/search": {
|
|
2437
2455
|
POST: "searchCorehrBasicInfoNationality"
|
|
2438
2456
|
},
|
|
@@ -2516,9 +2534,6 @@ Internal.define({
|
|
|
2516
2534
|
DELETE: "deleteCorehrPerson",
|
|
2517
2535
|
GET: "getCorehrPerson"
|
|
2518
2536
|
},
|
|
2519
|
-
"/corehr/v1/files/{id}": {
|
|
2520
|
-
GET: "getCorehrFile"
|
|
2521
|
-
},
|
|
2522
2537
|
"/corehr/v1/job_datas": {
|
|
2523
2538
|
POST: "createCorehrJobData",
|
|
2524
2539
|
GET: "listCorehrJobData"
|
|
@@ -3007,9 +3022,6 @@ Internal.define({
|
|
|
3007
3022
|
"/acs/v1/access_records": {
|
|
3008
3023
|
GET: "listAcsAccessRecord"
|
|
3009
3024
|
},
|
|
3010
|
-
"/acs/v1/access_records/{access_record_id}/access_photo": {
|
|
3011
|
-
GET: "getAcsAccessRecordAccessPhoto"
|
|
3012
|
-
},
|
|
3013
3025
|
"/performance/v1/semesters": {
|
|
3014
3026
|
GET: "listPerformanceSemester"
|
|
3015
3027
|
},
|
|
@@ -3052,9 +3064,6 @@ Internal.define({
|
|
|
3052
3064
|
"/lingo/v1/repos": {
|
|
3053
3065
|
GET: "listLingoRepo"
|
|
3054
3066
|
},
|
|
3055
|
-
"/lingo/v1/files/{file_token}/download": {
|
|
3056
|
-
GET: "downloadLingoFile"
|
|
3057
|
-
},
|
|
3058
3067
|
"/security_and_compliance/v1/openapi_logs/list_data": {
|
|
3059
3068
|
POST: "listDataSecurityAndComplianceOpenapiLog"
|
|
3060
3069
|
},
|
|
@@ -3135,9 +3144,6 @@ Internal.define({
|
|
|
3135
3144
|
"/baike/v1/classifications": {
|
|
3136
3145
|
GET: "listBaikeClassification"
|
|
3137
3146
|
},
|
|
3138
|
-
"/baike/v1/files/{file_token}/download": {
|
|
3139
|
-
GET: "downloadBaikeFile"
|
|
3140
|
-
},
|
|
3141
3147
|
"/hire/v1/applications/{application_id}/interviews": {
|
|
3142
3148
|
GET: "listHireApplicationInterview"
|
|
3143
3149
|
},
|
|
@@ -3294,18 +3300,30 @@ var LarkBot = class extends import_core5.Bot {
|
|
|
3294
3300
|
internal;
|
|
3295
3301
|
constructor(ctx, config) {
|
|
3296
3302
|
super(ctx, config, "lark");
|
|
3297
|
-
if (!config.selfUrl && !ctx.server.config.selfUrl) {
|
|
3298
|
-
this.logger.warn("selfUrl is not set, some features may not work");
|
|
3299
|
-
}
|
|
3300
3303
|
this.http = ctx.http.extend({
|
|
3301
3304
|
endpoint: config.endpoint
|
|
3302
3305
|
});
|
|
3303
3306
|
this.assetsQuester = ctx.http;
|
|
3304
3307
|
this.internal = new Internal(this);
|
|
3305
3308
|
ctx.plugin(HttpServer, this);
|
|
3309
|
+
this.defineInternalRoute("/*path", async ({ params, method, headers, body, query }) => {
|
|
3310
|
+
const response = await this.http("/" + params.path, {
|
|
3311
|
+
method,
|
|
3312
|
+
headers,
|
|
3313
|
+
data: body,
|
|
3314
|
+
params: Object.fromEntries(query.entries()),
|
|
3315
|
+
responseType: "arraybuffer",
|
|
3316
|
+
validateStatus: /* @__PURE__ */ __name(() => true, "validateStatus")
|
|
3317
|
+
});
|
|
3318
|
+
return {
|
|
3319
|
+
status: response.status,
|
|
3320
|
+
body: response.data,
|
|
3321
|
+
headers: response.headers
|
|
3322
|
+
};
|
|
3323
|
+
});
|
|
3306
3324
|
}
|
|
3307
|
-
|
|
3308
|
-
return this.
|
|
3325
|
+
getResourceUrl(type, message_id, file_key) {
|
|
3326
|
+
return this.getInternalUrl(`/im/v1/messages/${message_id}/resources/${file_key}`, { type });
|
|
3309
3327
|
}
|
|
3310
3328
|
async initialize() {
|
|
3311
3329
|
await this.refreshToken();
|
|
@@ -3378,6 +3396,16 @@ var LarkBot = class extends import_core5.Bot {
|
|
|
3378
3396
|
const data = members.items.map((v) => ({ user: { id: v.member_id, name: v.name }, name: v.name }));
|
|
3379
3397
|
return { data, next: members.page_token };
|
|
3380
3398
|
}
|
|
3399
|
+
async createUpload(...uploads) {
|
|
3400
|
+
return await Promise.all(uploads.map(async (upload) => {
|
|
3401
|
+
const response = await this.internal.createImFile({
|
|
3402
|
+
file_name: upload.filename,
|
|
3403
|
+
file_type: upload.type,
|
|
3404
|
+
file: new Blob([upload.data])
|
|
3405
|
+
});
|
|
3406
|
+
return this.getInternalUrl(`/im/v1/files/${response.file_key}`);
|
|
3407
|
+
}));
|
|
3408
|
+
}
|
|
3381
3409
|
};
|
|
3382
3410
|
((LarkBot2) => {
|
|
3383
3411
|
LarkBot2.Config = import_core5.Schema.intersect([
|
|
@@ -3393,14 +3421,14 @@ var LarkBot = class extends import_core5.Bot {
|
|
|
3393
3421
|
import_core5.Schema.object({
|
|
3394
3422
|
platform: import_core5.Schema.const("feishu").required()
|
|
3395
3423
|
}),
|
|
3396
|
-
import_core5.HTTP.createConfig("https://open.feishu.cn/open-apis
|
|
3424
|
+
import_core5.HTTP.createConfig("https://open.feishu.cn/open-apis"),
|
|
3397
3425
|
HttpServer.createConfig("/feishu")
|
|
3398
3426
|
]),
|
|
3399
3427
|
import_core5.Schema.intersect([
|
|
3400
3428
|
import_core5.Schema.object({
|
|
3401
3429
|
platform: import_core5.Schema.const("lark").required()
|
|
3402
3430
|
}),
|
|
3403
|
-
import_core5.HTTP.createConfig("https://open.larksuite.com/open-apis
|
|
3431
|
+
import_core5.HTTP.createConfig("https://open.larksuite.com/open-apis"),
|
|
3404
3432
|
HttpServer.createConfig("/lark")
|
|
3405
3433
|
])
|
|
3406
3434
|
])
|
|
@@ -3416,4 +3444,3 @@ var src_default = LarkBot;
|
|
|
3416
3444
|
Lark,
|
|
3417
3445
|
LarkBot
|
|
3418
3446
|
});
|
|
3419
|
-
//# sourceMappingURL=index.cjs.map
|
package/lib/types/api.d.ts
CHANGED
|
@@ -446,7 +446,7 @@ declare module './internal' {
|
|
|
446
446
|
* 获取消息中的资源文件
|
|
447
447
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message-resource/get
|
|
448
448
|
*/
|
|
449
|
-
getImMessageResource(message_id: string, file_key: string, query?: GetImMessageResourceQuery): Promise<
|
|
449
|
+
getImMessageResource(message_id: string, file_key: string, query?: GetImMessageResourceQuery): Promise<ArrayBuffer>;
|
|
450
450
|
/**
|
|
451
451
|
* 获取指定消息的内容
|
|
452
452
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message/get
|
|
@@ -491,7 +491,7 @@ declare module './internal' {
|
|
|
491
491
|
* 下载图片
|
|
492
492
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/image/get
|
|
493
493
|
*/
|
|
494
|
-
getImImage(image_key: string): Promise<
|
|
494
|
+
getImImage(image_key: string): Promise<ArrayBuffer>;
|
|
495
495
|
/**
|
|
496
496
|
* 上传文件
|
|
497
497
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/file/create
|
|
@@ -501,7 +501,7 @@ declare module './internal' {
|
|
|
501
501
|
* 下载文件
|
|
502
502
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/file/get
|
|
503
503
|
*/
|
|
504
|
-
getImFile(file_key: string): Promise<
|
|
504
|
+
getImFile(file_key: string): Promise<ArrayBuffer>;
|
|
505
505
|
/**
|
|
506
506
|
* 更新应用发送的消息卡片
|
|
507
507
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message/patch
|
|
@@ -741,7 +741,7 @@ declare module './internal' {
|
|
|
741
741
|
* 下载素材
|
|
742
742
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/media/download
|
|
743
743
|
*/
|
|
744
|
-
downloadDrivev1Media(file_token: string, query?: DownloadDrivev1MediaQuery): Promise<
|
|
744
|
+
downloadDrivev1Media(file_token: string, query?: DownloadDrivev1MediaQuery): Promise<ArrayBuffer>;
|
|
745
745
|
/**
|
|
746
746
|
* 获取素材临时下载链接
|
|
747
747
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/media/batch_get_tmp_download_url
|
|
@@ -801,7 +801,7 @@ declare module './internal' {
|
|
|
801
801
|
* 下载文件
|
|
802
802
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/file/download
|
|
803
803
|
*/
|
|
804
|
-
downloadDrivev1File(file_token: string): Promise<
|
|
804
|
+
downloadDrivev1File(file_token: string): Promise<ArrayBuffer>;
|
|
805
805
|
/**
|
|
806
806
|
* 创建导入任务
|
|
807
807
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/import_task/create
|
|
@@ -1756,7 +1756,7 @@ declare module './internal' {
|
|
|
1756
1756
|
* 下载导出文件
|
|
1757
1757
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/vc-v1/export/download
|
|
1758
1758
|
*/
|
|
1759
|
-
downloadVcExport(query?: DownloadVcExportQuery): Promise<
|
|
1759
|
+
downloadVcExport(query?: DownloadVcExportQuery): Promise<ArrayBuffer>;
|
|
1760
1760
|
/**
|
|
1761
1761
|
* 创建会议室层级
|
|
1762
1762
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/vc-v1/room_level/create
|
|
@@ -2051,7 +2051,7 @@ declare module './internal' {
|
|
|
2051
2051
|
* 下载用户人脸识别照片
|
|
2052
2052
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/file/download
|
|
2053
2053
|
*/
|
|
2054
|
-
downloadAttendanceFile(file_id: string): Promise<
|
|
2054
|
+
downloadAttendanceFile(file_id: string): Promise<ArrayBuffer>;
|
|
2055
2055
|
/**
|
|
2056
2056
|
* 通过过期时间获取发放记录
|
|
2057
2057
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/leave_employ_expire_record/get
|
|
@@ -2291,7 +2291,7 @@ declare module './internal' {
|
|
|
2291
2291
|
* 获取工单内图像
|
|
2292
2292
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/helpdesk-v1/ticket/ticket_image
|
|
2293
2293
|
*/
|
|
2294
|
-
ticketImageHelpdeskTicket(query?: TicketImageHelpdeskTicketQuery): Promise<
|
|
2294
|
+
ticketImageHelpdeskTicket(query?: TicketImageHelpdeskTicketQuery): Promise<ArrayBuffer>;
|
|
2295
2295
|
/**
|
|
2296
2296
|
* 回复用户在工单里的提问
|
|
2297
2297
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/helpdesk-v1/ticket/answer_user_query
|
|
@@ -2371,7 +2371,7 @@ declare module './internal' {
|
|
|
2371
2371
|
* 获取知识库图像
|
|
2372
2372
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/helpdesk-v1/faq/faq_image
|
|
2373
2373
|
*/
|
|
2374
|
-
faqImageHelpdeskFaq(id: string, image_key: string): Promise<
|
|
2374
|
+
faqImageHelpdeskFaq(id: string, image_key: string): Promise<ArrayBuffer>;
|
|
2375
2375
|
/**
|
|
2376
2376
|
* 搜索知识库
|
|
2377
2377
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/helpdesk-v1/faq/search
|
|
@@ -3461,7 +3461,7 @@ declare module './internal' {
|
|
|
3461
3461
|
* 下载人员的附件
|
|
3462
3462
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/ehr/ehr-v1/attachment/get
|
|
3463
3463
|
*/
|
|
3464
|
-
getEhrAttachment(token: string): Promise<
|
|
3464
|
+
getEhrAttachment(token: string): Promise<ArrayBuffer>;
|
|
3465
3465
|
/**
|
|
3466
3466
|
* 查询国籍信息
|
|
3467
3467
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-nationality/search
|
|
@@ -3641,7 +3641,7 @@ declare module './internal' {
|
|
|
3641
3641
|
* 下载文件
|
|
3642
3642
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/file/get
|
|
3643
3643
|
*/
|
|
3644
|
-
getCorehrFile(id: string): Promise<
|
|
3644
|
+
getCorehrFile(id: string): Promise<ArrayBuffer>;
|
|
3645
3645
|
/**
|
|
3646
3646
|
* 创建任职信息
|
|
3647
3647
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/job_data/create
|
|
@@ -4591,7 +4591,7 @@ declare module './internal' {
|
|
|
4591
4591
|
* 下载人脸图片
|
|
4592
4592
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/acs-v1/user-face/get
|
|
4593
4593
|
*/
|
|
4594
|
-
getAcsUserFace(user_id: string, query?: GetAcsUserFaceQuery): Promise<
|
|
4594
|
+
getAcsUserFace(user_id: string, query?: GetAcsUserFaceQuery): Promise<ArrayBuffer>;
|
|
4595
4595
|
/**
|
|
4596
4596
|
* 获取门禁设备列表
|
|
4597
4597
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/acs-v1/device/list
|
|
@@ -4606,7 +4606,7 @@ declare module './internal' {
|
|
|
4606
4606
|
* 下载开门时的人脸识别图片
|
|
4607
4607
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/acs-v1/access_record-access_photo/get
|
|
4608
4608
|
*/
|
|
4609
|
-
getAcsAccessRecordAccessPhoto(access_record_id: string): Promise<
|
|
4609
|
+
getAcsAccessRecordAccessPhoto(access_record_id: string): Promise<ArrayBuffer>;
|
|
4610
4610
|
/**
|
|
4611
4611
|
* 获取周期
|
|
4612
4612
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/performance-v1/semester/list
|
|
@@ -4696,7 +4696,7 @@ declare module './internal' {
|
|
|
4696
4696
|
* 下载图片
|
|
4697
4697
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/lingo-v1/file/download
|
|
4698
4698
|
*/
|
|
4699
|
-
downloadLingoFile(file_token: string): Promise<
|
|
4699
|
+
downloadLingoFile(file_token: string): Promise<ArrayBuffer>;
|
|
4700
4700
|
/**
|
|
4701
4701
|
* 获取OpenAPI审计日志数据
|
|
4702
4702
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/security_and_compliance-v1/openapi_log/list_data
|
|
@@ -4846,7 +4846,7 @@ declare module './internal' {
|
|
|
4846
4846
|
* 下载图片
|
|
4847
4847
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/baike-v1/file/download
|
|
4848
4848
|
*/
|
|
4849
|
-
downloadBaikeFile(file_token: string): Promise<
|
|
4849
|
+
downloadBaikeFile(file_token: string): Promise<ArrayBuffer>;
|
|
4850
4850
|
/**
|
|
4851
4851
|
* 获取用户列表
|
|
4852
4852
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/contact-v3/user/list
|
|
@@ -25656,11 +25656,11 @@ export interface GetProgressImBatchMessageResponse {
|
|
|
25656
25656
|
}
|
|
25657
25657
|
export interface CreateImImageResponse {
|
|
25658
25658
|
/** 图片的key */
|
|
25659
|
-
image_key
|
|
25659
|
+
image_key: string;
|
|
25660
25660
|
}
|
|
25661
25661
|
export interface CreateImFileResponse {
|
|
25662
25662
|
/** 文件的key */
|
|
25663
|
-
file_key
|
|
25663
|
+
file_key: string;
|
|
25664
25664
|
}
|
|
25665
25665
|
export interface CreateImMessageReactionResponse extends Lark.MessageReaction {
|
|
25666
25666
|
}
|
package/lib/types/internal.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@satorijs/adapter-lark",
|
|
3
3
|
"description": "Lark (飞书) Adapter for Satorijs",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.8.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "lib/index.cjs",
|
|
7
7
|
"types": "lib/index.d.ts",
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"chat"
|
|
35
35
|
],
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@cordisjs/plugin-server": "^0.2.
|
|
38
|
-
"@satorijs/core": "^4.2
|
|
37
|
+
"@cordisjs/plugin-server": "^0.2.5",
|
|
38
|
+
"@satorijs/core": "^4.3.2",
|
|
39
39
|
"cordis": "^3.18.1"
|
|
40
40
|
},
|
|
41
41
|
"peerDependencies": {
|
|
42
|
-
"@satorijs/core": "^4.2
|
|
42
|
+
"@satorijs/core": "^4.3.2"
|
|
43
43
|
}
|
|
44
|
-
}
|
|
44
|
+
}
|
package/src/bot.ts
CHANGED
|
@@ -18,11 +18,6 @@ export class LarkBot<C extends Context = Context> extends Bot<C, LarkBot.Config>
|
|
|
18
18
|
constructor(ctx: C, config: LarkBot.Config) {
|
|
19
19
|
super(ctx, config, 'lark')
|
|
20
20
|
|
|
21
|
-
// lark bot needs config.selfUrl to be set as it should be serve on a public url
|
|
22
|
-
if (!config.selfUrl && !ctx.server.config.selfUrl) {
|
|
23
|
-
this.logger.warn('selfUrl is not set, some features may not work')
|
|
24
|
-
}
|
|
25
|
-
|
|
26
21
|
this.http = ctx.http.extend({
|
|
27
22
|
endpoint: config.endpoint,
|
|
28
23
|
})
|
|
@@ -30,10 +25,26 @@ export class LarkBot<C extends Context = Context> extends Bot<C, LarkBot.Config>
|
|
|
30
25
|
this.internal = new Internal(this)
|
|
31
26
|
|
|
32
27
|
ctx.plugin(HttpServer, this)
|
|
28
|
+
|
|
29
|
+
this.defineInternalRoute('/*path', async ({ params, method, headers, body, query }) => {
|
|
30
|
+
const response = await this.http('/' + params.path, {
|
|
31
|
+
method,
|
|
32
|
+
headers,
|
|
33
|
+
data: body,
|
|
34
|
+
params: Object.fromEntries(query.entries()),
|
|
35
|
+
responseType: 'arraybuffer',
|
|
36
|
+
validateStatus: () => true,
|
|
37
|
+
})
|
|
38
|
+
return {
|
|
39
|
+
status: response.status,
|
|
40
|
+
body: response.data,
|
|
41
|
+
headers: response.headers,
|
|
42
|
+
}
|
|
43
|
+
})
|
|
33
44
|
}
|
|
34
45
|
|
|
35
|
-
|
|
36
|
-
return this.
|
|
46
|
+
getResourceUrl(type: string, message_id: string, file_key: string) {
|
|
47
|
+
return this.getInternalUrl(`/im/v1/messages/${message_id}/resources/${file_key}`, { type })
|
|
37
48
|
}
|
|
38
49
|
|
|
39
50
|
async initialize() {
|
|
@@ -130,6 +141,17 @@ export class LarkBot<C extends Context = Context> extends Bot<C, LarkBot.Config>
|
|
|
130
141
|
const data = members.items.map(v => ({ user: { id: v.member_id, name: v.name }, name: v.name }))
|
|
131
142
|
return { data, next: members.page_token }
|
|
132
143
|
}
|
|
144
|
+
|
|
145
|
+
async createUpload(...uploads: Universal.Upload[]): Promise<string[]> {
|
|
146
|
+
return await Promise.all(uploads.map(async (upload) => {
|
|
147
|
+
const response = await this.internal.createImFile({
|
|
148
|
+
file_name: upload.filename,
|
|
149
|
+
file_type: upload.type,
|
|
150
|
+
file: new Blob([upload.data]),
|
|
151
|
+
})
|
|
152
|
+
return this.getInternalUrl(`/im/v1/files/${response.file_key}`)
|
|
153
|
+
}))
|
|
154
|
+
}
|
|
133
155
|
}
|
|
134
156
|
|
|
135
157
|
export namespace LarkBot {
|
|
@@ -153,14 +175,14 @@ export namespace LarkBot {
|
|
|
153
175
|
Schema.object({
|
|
154
176
|
platform: Schema.const('feishu').required(),
|
|
155
177
|
}),
|
|
156
|
-
HTTP.createConfig('https://open.feishu.cn/open-apis
|
|
178
|
+
HTTP.createConfig('https://open.feishu.cn/open-apis'),
|
|
157
179
|
HttpServer.createConfig('/feishu'),
|
|
158
180
|
]),
|
|
159
181
|
Schema.intersect([
|
|
160
182
|
Schema.object({
|
|
161
183
|
platform: Schema.const('lark').required(),
|
|
162
184
|
}),
|
|
163
|
-
HTTP.createConfig('https://open.larksuite.com/open-apis
|
|
185
|
+
HTTP.createConfig('https://open.larksuite.com/open-apis'),
|
|
164
186
|
HttpServer.createConfig('/lark'),
|
|
165
187
|
]),
|
|
166
188
|
]),
|
package/src/http.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { Readable } from 'node:stream'
|
|
2
|
-
import { ReadableStream } from 'node:stream/web'
|
|
3
1
|
import { Adapter, Context, Logger, Schema } from '@satorijs/core'
|
|
4
2
|
import {} from '@cordisjs/plugin-server'
|
|
5
3
|
|
|
@@ -78,24 +76,6 @@ export class HttpServer<C extends Context = Context> extends Adapter<C, LarkBot<
|
|
|
78
76
|
ctx.body = {}
|
|
79
77
|
return ctx.status = 200
|
|
80
78
|
})
|
|
81
|
-
|
|
82
|
-
bot.ctx.server.get(path + '/assets/:type/:message_id/:key', async (ctx) => {
|
|
83
|
-
const type = ctx.params.type === 'image' ? 'image' : 'file'
|
|
84
|
-
const key = ctx.params.key
|
|
85
|
-
const messageId = ctx.params.message_id
|
|
86
|
-
const selfId = ctx.request.query.self_id
|
|
87
|
-
const bot = this.bots.find((bot) => bot.selfId === selfId)
|
|
88
|
-
if (!bot) return ctx.status = 404
|
|
89
|
-
|
|
90
|
-
const resp = await bot.http<ReadableStream>(`/im/v1/messages/${messageId}/resources/${key}`, {
|
|
91
|
-
method: 'GET',
|
|
92
|
-
params: { type },
|
|
93
|
-
responseType: 'stream',
|
|
94
|
-
})
|
|
95
|
-
ctx.set('content-type', resp.headers.get('content-type'))
|
|
96
|
-
ctx.status = 200
|
|
97
|
-
ctx.response.body = Readable.fromWeb(resp.data)
|
|
98
|
-
})
|
|
99
79
|
}
|
|
100
80
|
|
|
101
81
|
async dispatchSession(body: EventPayload) {
|
|
@@ -103,7 +83,7 @@ export class HttpServer<C extends Context = Context> extends Adapter<C, LarkBot<
|
|
|
103
83
|
if (!header) return
|
|
104
84
|
const { app_id, event_type } = header
|
|
105
85
|
body.type = event_type // add type to body to ease typescript type narrowing
|
|
106
|
-
const bot = this.bots.find((bot) => bot.appId === app_id)
|
|
86
|
+
const bot = this.bots.find((bot) => bot.config.appId === app_id)
|
|
107
87
|
const session = await adaptSession(bot, body)
|
|
108
88
|
bot.dispatch(session)
|
|
109
89
|
}
|
package/src/message.ts
CHANGED
|
@@ -101,7 +101,17 @@ export class LarkMessageEncoder<C extends Context = Context> extends MessageEnco
|
|
|
101
101
|
}
|
|
102
102
|
|
|
103
103
|
async sendFile(_type: 'video' | 'audio' | 'file', attrs: any) {
|
|
104
|
-
const url = attrs.src || attrs.url
|
|
104
|
+
const url: string = attrs.src || attrs.url
|
|
105
|
+
const prefix = this.bot.getInternalUrl('/im/v1/files/')
|
|
106
|
+
if (url.startsWith(prefix)) {
|
|
107
|
+
const file_key = url.slice(prefix.length)
|
|
108
|
+
await this.post({
|
|
109
|
+
msg_type: _type === 'video' ? 'media' : _type,
|
|
110
|
+
content: JSON.stringify({ file_key }),
|
|
111
|
+
})
|
|
112
|
+
return
|
|
113
|
+
}
|
|
114
|
+
|
|
105
115
|
const { filename, type, data } = await this.bot.assetsQuester.file(url)
|
|
106
116
|
|
|
107
117
|
let file_type: CreateImFileForm['file_type']
|
package/src/types/api.ts
CHANGED
|
@@ -446,7 +446,7 @@ declare module './internal' {
|
|
|
446
446
|
* 获取消息中的资源文件
|
|
447
447
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message-resource/get
|
|
448
448
|
*/
|
|
449
|
-
getImMessageResource(message_id: string, file_key: string, query?: GetImMessageResourceQuery): Promise<
|
|
449
|
+
getImMessageResource(message_id: string, file_key: string, query?: GetImMessageResourceQuery): Promise<ArrayBuffer>
|
|
450
450
|
/**
|
|
451
451
|
* 获取指定消息的内容
|
|
452
452
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message/get
|
|
@@ -491,7 +491,7 @@ declare module './internal' {
|
|
|
491
491
|
* 下载图片
|
|
492
492
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/image/get
|
|
493
493
|
*/
|
|
494
|
-
getImImage(image_key: string): Promise<
|
|
494
|
+
getImImage(image_key: string): Promise<ArrayBuffer>
|
|
495
495
|
/**
|
|
496
496
|
* 上传文件
|
|
497
497
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/file/create
|
|
@@ -501,7 +501,7 @@ declare module './internal' {
|
|
|
501
501
|
* 下载文件
|
|
502
502
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/file/get
|
|
503
503
|
*/
|
|
504
|
-
getImFile(file_key: string): Promise<
|
|
504
|
+
getImFile(file_key: string): Promise<ArrayBuffer>
|
|
505
505
|
/**
|
|
506
506
|
* 更新应用发送的消息卡片
|
|
507
507
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/im-v1/message/patch
|
|
@@ -741,7 +741,7 @@ declare module './internal' {
|
|
|
741
741
|
* 下载素材
|
|
742
742
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/media/download
|
|
743
743
|
*/
|
|
744
|
-
downloadDrivev1Media(file_token: string, query?: DownloadDrivev1MediaQuery): Promise<
|
|
744
|
+
downloadDrivev1Media(file_token: string, query?: DownloadDrivev1MediaQuery): Promise<ArrayBuffer>
|
|
745
745
|
/**
|
|
746
746
|
* 获取素材临时下载链接
|
|
747
747
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/media/batch_get_tmp_download_url
|
|
@@ -801,7 +801,7 @@ declare module './internal' {
|
|
|
801
801
|
* 下载文件
|
|
802
802
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/file/download
|
|
803
803
|
*/
|
|
804
|
-
downloadDrivev1File(file_token: string): Promise<
|
|
804
|
+
downloadDrivev1File(file_token: string): Promise<ArrayBuffer>
|
|
805
805
|
/**
|
|
806
806
|
* 创建导入任务
|
|
807
807
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/drive-v1/import_task/create
|
|
@@ -1756,7 +1756,7 @@ declare module './internal' {
|
|
|
1756
1756
|
* 下载导出文件
|
|
1757
1757
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/vc-v1/export/download
|
|
1758
1758
|
*/
|
|
1759
|
-
downloadVcExport(query?: DownloadVcExportQuery): Promise<
|
|
1759
|
+
downloadVcExport(query?: DownloadVcExportQuery): Promise<ArrayBuffer>
|
|
1760
1760
|
/**
|
|
1761
1761
|
* 创建会议室层级
|
|
1762
1762
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/vc-v1/room_level/create
|
|
@@ -2051,7 +2051,7 @@ declare module './internal' {
|
|
|
2051
2051
|
* 下载用户人脸识别照片
|
|
2052
2052
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/file/download
|
|
2053
2053
|
*/
|
|
2054
|
-
downloadAttendanceFile(file_id: string): Promise<
|
|
2054
|
+
downloadAttendanceFile(file_id: string): Promise<ArrayBuffer>
|
|
2055
2055
|
/**
|
|
2056
2056
|
* 通过过期时间获取发放记录
|
|
2057
2057
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/attendance-v1/leave_employ_expire_record/get
|
|
@@ -2291,7 +2291,7 @@ declare module './internal' {
|
|
|
2291
2291
|
* 获取工单内图像
|
|
2292
2292
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/helpdesk-v1/ticket/ticket_image
|
|
2293
2293
|
*/
|
|
2294
|
-
ticketImageHelpdeskTicket(query?: TicketImageHelpdeskTicketQuery): Promise<
|
|
2294
|
+
ticketImageHelpdeskTicket(query?: TicketImageHelpdeskTicketQuery): Promise<ArrayBuffer>
|
|
2295
2295
|
/**
|
|
2296
2296
|
* 回复用户在工单里的提问
|
|
2297
2297
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/helpdesk-v1/ticket/answer_user_query
|
|
@@ -2371,7 +2371,7 @@ declare module './internal' {
|
|
|
2371
2371
|
* 获取知识库图像
|
|
2372
2372
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/helpdesk-v1/faq/faq_image
|
|
2373
2373
|
*/
|
|
2374
|
-
faqImageHelpdeskFaq(id: string, image_key: string): Promise<
|
|
2374
|
+
faqImageHelpdeskFaq(id: string, image_key: string): Promise<ArrayBuffer>
|
|
2375
2375
|
/**
|
|
2376
2376
|
* 搜索知识库
|
|
2377
2377
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/helpdesk-v1/faq/search
|
|
@@ -3461,7 +3461,7 @@ declare module './internal' {
|
|
|
3461
3461
|
* 下载人员的附件
|
|
3462
3462
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/ehr/ehr-v1/attachment/get
|
|
3463
3463
|
*/
|
|
3464
|
-
getEhrAttachment(token: string): Promise<
|
|
3464
|
+
getEhrAttachment(token: string): Promise<ArrayBuffer>
|
|
3465
3465
|
/**
|
|
3466
3466
|
* 查询国籍信息
|
|
3467
3467
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/corehr-v2/basic_info-nationality/search
|
|
@@ -3641,7 +3641,7 @@ declare module './internal' {
|
|
|
3641
3641
|
* 下载文件
|
|
3642
3642
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/file/get
|
|
3643
3643
|
*/
|
|
3644
|
-
getCorehrFile(id: string): Promise<
|
|
3644
|
+
getCorehrFile(id: string): Promise<ArrayBuffer>
|
|
3645
3645
|
/**
|
|
3646
3646
|
* 创建任职信息
|
|
3647
3647
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/corehr-v1/job_data/create
|
|
@@ -4591,7 +4591,7 @@ declare module './internal' {
|
|
|
4591
4591
|
* 下载人脸图片
|
|
4592
4592
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/acs-v1/user-face/get
|
|
4593
4593
|
*/
|
|
4594
|
-
getAcsUserFace(user_id: string, query?: GetAcsUserFaceQuery): Promise<
|
|
4594
|
+
getAcsUserFace(user_id: string, query?: GetAcsUserFaceQuery): Promise<ArrayBuffer>
|
|
4595
4595
|
/**
|
|
4596
4596
|
* 获取门禁设备列表
|
|
4597
4597
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/acs-v1/device/list
|
|
@@ -4606,7 +4606,7 @@ declare module './internal' {
|
|
|
4606
4606
|
* 下载开门时的人脸识别图片
|
|
4607
4607
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/acs-v1/access_record-access_photo/get
|
|
4608
4608
|
*/
|
|
4609
|
-
getAcsAccessRecordAccessPhoto(access_record_id: string): Promise<
|
|
4609
|
+
getAcsAccessRecordAccessPhoto(access_record_id: string): Promise<ArrayBuffer>
|
|
4610
4610
|
/**
|
|
4611
4611
|
* 获取周期
|
|
4612
4612
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/performance-v1/semester/list
|
|
@@ -4696,7 +4696,7 @@ declare module './internal' {
|
|
|
4696
4696
|
* 下载图片
|
|
4697
4697
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/lingo-v1/file/download
|
|
4698
4698
|
*/
|
|
4699
|
-
downloadLingoFile(file_token: string): Promise<
|
|
4699
|
+
downloadLingoFile(file_token: string): Promise<ArrayBuffer>
|
|
4700
4700
|
/**
|
|
4701
4701
|
* 获取OpenAPI审计日志数据
|
|
4702
4702
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/security_and_compliance-v1/openapi_log/list_data
|
|
@@ -4846,7 +4846,7 @@ declare module './internal' {
|
|
|
4846
4846
|
* 下载图片
|
|
4847
4847
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/baike-v1/file/download
|
|
4848
4848
|
*/
|
|
4849
|
-
downloadBaikeFile(file_token: string): Promise<
|
|
4849
|
+
downloadBaikeFile(file_token: string): Promise<ArrayBuffer>
|
|
4850
4850
|
/**
|
|
4851
4851
|
* 获取用户列表
|
|
4852
4852
|
* @see https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/contact-v3/user/list
|
|
@@ -25654,11 +25654,11 @@ export interface GetProgressImBatchMessageResponse {
|
|
|
25654
25654
|
}
|
|
25655
25655
|
export interface CreateImImageResponse {
|
|
25656
25656
|
/** 图片的key */
|
|
25657
|
-
image_key
|
|
25657
|
+
image_key: string
|
|
25658
25658
|
}
|
|
25659
25659
|
export interface CreateImFileResponse {
|
|
25660
25660
|
/** 文件的key */
|
|
25661
|
-
file_key
|
|
25661
|
+
file_key: string
|
|
25662
25662
|
}
|
|
25663
25663
|
export interface CreateImMessageReactionResponse extends Lark.MessageReaction {}
|
|
25664
25664
|
export interface DeleteImMessageReactionResponse extends Lark.MessageReaction {}
|
|
@@ -28351,7 +28351,55 @@ Internal.define({
|
|
|
28351
28351
|
'/auth/v3/app_ticket/resend': {
|
|
28352
28352
|
POST: 'appTicketResendAuth',
|
|
28353
28353
|
},
|
|
28354
|
-
}, {
|
|
28354
|
+
}, { type: 'json-body' })
|
|
28355
|
+
|
|
28356
|
+
Internal.define({
|
|
28357
|
+
'/im/v1/messages/{message_id}/resources/{file_key}': {
|
|
28358
|
+
GET: 'getImMessageResource',
|
|
28359
|
+
},
|
|
28360
|
+
'/im/v1/images/{image_key}': {
|
|
28361
|
+
GET: 'getImImage',
|
|
28362
|
+
},
|
|
28363
|
+
'/im/v1/files/{file_key}': {
|
|
28364
|
+
GET: 'getImFile',
|
|
28365
|
+
},
|
|
28366
|
+
'/drive/v1/medias/{file_token}/download': {
|
|
28367
|
+
GET: 'downloadDrivev1Media',
|
|
28368
|
+
},
|
|
28369
|
+
'/drive/v1/files/{file_token}/download': {
|
|
28370
|
+
GET: 'downloadDrivev1File',
|
|
28371
|
+
},
|
|
28372
|
+
'/vc/v1/exports/download': {
|
|
28373
|
+
GET: 'downloadVcExport',
|
|
28374
|
+
},
|
|
28375
|
+
'/attendance/v1/files/{file_id}/download': {
|
|
28376
|
+
GET: 'downloadAttendanceFile',
|
|
28377
|
+
},
|
|
28378
|
+
'/helpdesk/v1/ticket_images': {
|
|
28379
|
+
GET: 'ticketImageHelpdeskTicket',
|
|
28380
|
+
},
|
|
28381
|
+
'/helpdesk/v1/faqs/{id}/image/{image_key}': {
|
|
28382
|
+
GET: 'faqImageHelpdeskFaq',
|
|
28383
|
+
},
|
|
28384
|
+
'/ehr/v1/attachments/{token}': {
|
|
28385
|
+
GET: 'getEhrAttachment',
|
|
28386
|
+
},
|
|
28387
|
+
'/corehr/v1/files/{id}': {
|
|
28388
|
+
GET: 'getCorehrFile',
|
|
28389
|
+
},
|
|
28390
|
+
'/acs/v1/users/{user_id}/face': {
|
|
28391
|
+
GET: 'getAcsUserFace',
|
|
28392
|
+
},
|
|
28393
|
+
'/acs/v1/access_records/{access_record_id}/access_photo': {
|
|
28394
|
+
GET: 'getAcsAccessRecordAccessPhoto',
|
|
28395
|
+
},
|
|
28396
|
+
'/lingo/v1/files/{file_token}/download': {
|
|
28397
|
+
GET: 'downloadLingoFile',
|
|
28398
|
+
},
|
|
28399
|
+
'/baike/v1/files/{file_token}/download': {
|
|
28400
|
+
GET: 'downloadBaikeFile',
|
|
28401
|
+
},
|
|
28402
|
+
}, { type: 'binary' })
|
|
28355
28403
|
|
|
28356
28404
|
Internal.define({
|
|
28357
28405
|
'/event/v1/outbound_ip': {
|
|
@@ -28560,9 +28608,6 @@ Internal.define({
|
|
|
28560
28608
|
'/im/v1/messages/{message_id}/read_users': {
|
|
28561
28609
|
GET: 'readUsersImMessage',
|
|
28562
28610
|
},
|
|
28563
|
-
'/im/v1/messages/{message_id}/resources/{file_key}': {
|
|
28564
|
-
GET: 'getImMessageResource',
|
|
28565
|
-
},
|
|
28566
28611
|
'/im/v1/messages/{message_id}/urgent_app': {
|
|
28567
28612
|
PATCH: 'urgentAppImMessage',
|
|
28568
28613
|
},
|
|
@@ -28581,12 +28626,6 @@ Internal.define({
|
|
|
28581
28626
|
'/im/v1/batch_messages/{batch_message_id}/get_progress': {
|
|
28582
28627
|
GET: 'getProgressImBatchMessage',
|
|
28583
28628
|
},
|
|
28584
|
-
'/im/v1/images/{image_key}': {
|
|
28585
|
-
GET: 'getImImage',
|
|
28586
|
-
},
|
|
28587
|
-
'/im/v1/files/{file_key}': {
|
|
28588
|
-
GET: 'getImFile',
|
|
28589
|
-
},
|
|
28590
28629
|
'/im/v1/messages/{message_id}/reactions': {
|
|
28591
28630
|
POST: 'createImMessageReaction',
|
|
28592
28631
|
GET: 'listImMessageReaction',
|
|
@@ -28700,9 +28739,6 @@ Internal.define({
|
|
|
28700
28739
|
'/drive/v1/files/task_check': {
|
|
28701
28740
|
GET: 'taskCheckDrivev1File',
|
|
28702
28741
|
},
|
|
28703
|
-
'/drive/v1/medias/{file_token}/download': {
|
|
28704
|
-
GET: 'downloadDrivev1Media',
|
|
28705
|
-
},
|
|
28706
28742
|
'/drive/v1/medias/batch_get_tmp_download_url': {
|
|
28707
28743
|
GET: 'batchGetTmpDownloadUrlDrivev1Media',
|
|
28708
28744
|
},
|
|
@@ -28727,9 +28763,6 @@ Internal.define({
|
|
|
28727
28763
|
'/drive/v1/files/upload_finish': {
|
|
28728
28764
|
POST: 'uploadFinishDrivev1File',
|
|
28729
28765
|
},
|
|
28730
|
-
'/drive/v1/files/{file_token}/download': {
|
|
28731
|
-
GET: 'downloadDrivev1File',
|
|
28732
|
-
},
|
|
28733
28766
|
'/drive/v1/import_tasks': {
|
|
28734
28767
|
POST: 'createDrivev1ImportTask',
|
|
28735
28768
|
},
|
|
@@ -29200,9 +29233,6 @@ Internal.define({
|
|
|
29200
29233
|
'/vc/v1/exports/{task_id}': {
|
|
29201
29234
|
GET: 'getVcExport',
|
|
29202
29235
|
},
|
|
29203
|
-
'/vc/v1/exports/download': {
|
|
29204
|
-
GET: 'downloadVcExport',
|
|
29205
|
-
},
|
|
29206
29236
|
'/vc/v1/room_levels': {
|
|
29207
29237
|
POST: 'createVcRoomLevel',
|
|
29208
29238
|
GET: 'listVcRoomLevel',
|
|
@@ -29348,9 +29378,6 @@ Internal.define({
|
|
|
29348
29378
|
'/attendance/v1/user_settings/query': {
|
|
29349
29379
|
GET: 'queryAttendanceUserSetting',
|
|
29350
29380
|
},
|
|
29351
|
-
'/attendance/v1/files/{file_id}/download': {
|
|
29352
|
-
GET: 'downloadAttendanceFile',
|
|
29353
|
-
},
|
|
29354
29381
|
'/attendance/v1/leave_employ_expire_records/{leave_id}': {
|
|
29355
29382
|
GET: 'getAttendanceLeaveEmployExpireRecord',
|
|
29356
29383
|
},
|
|
@@ -29477,9 +29504,6 @@ Internal.define({
|
|
|
29477
29504
|
'/helpdesk/v1/tickets': {
|
|
29478
29505
|
GET: 'listHelpdeskTicket',
|
|
29479
29506
|
},
|
|
29480
|
-
'/helpdesk/v1/ticket_images': {
|
|
29481
|
-
GET: 'ticketImageHelpdeskTicket',
|
|
29482
|
-
},
|
|
29483
29507
|
'/helpdesk/v1/tickets/{ticket_id}/answer_user_query': {
|
|
29484
29508
|
POST: 'answerUserQueryHelpdeskTicket',
|
|
29485
29509
|
},
|
|
@@ -29511,9 +29535,6 @@ Internal.define({
|
|
|
29511
29535
|
PATCH: 'patchHelpdeskFaq',
|
|
29512
29536
|
GET: 'getHelpdeskFaq',
|
|
29513
29537
|
},
|
|
29514
|
-
'/helpdesk/v1/faqs/{id}/image/{image_key}': {
|
|
29515
|
-
GET: 'faqImageHelpdeskFaq',
|
|
29516
|
-
},
|
|
29517
29538
|
'/helpdesk/v1/faqs/search': {
|
|
29518
29539
|
GET: 'searchHelpdeskFaq',
|
|
29519
29540
|
},
|
|
@@ -29977,9 +29998,6 @@ Internal.define({
|
|
|
29977
29998
|
'/ehr/v1/employees': {
|
|
29978
29999
|
GET: 'listEhrEmployee',
|
|
29979
30000
|
},
|
|
29980
|
-
'/ehr/v1/attachments/{token}': {
|
|
29981
|
-
GET: 'getEhrAttachment',
|
|
29982
|
-
},
|
|
29983
30001
|
'/corehr/v2/basic_info/nationalities/search': {
|
|
29984
30002
|
POST: 'searchCorehrBasicInfoNationality',
|
|
29985
30003
|
},
|
|
@@ -30063,9 +30081,6 @@ Internal.define({
|
|
|
30063
30081
|
DELETE: 'deleteCorehrPerson',
|
|
30064
30082
|
GET: 'getCorehrPerson',
|
|
30065
30083
|
},
|
|
30066
|
-
'/corehr/v1/files/{id}': {
|
|
30067
|
-
GET: 'getCorehrFile',
|
|
30068
|
-
},
|
|
30069
30084
|
'/corehr/v1/job_datas': {
|
|
30070
30085
|
POST: 'createCorehrJobData',
|
|
30071
30086
|
GET: 'listCorehrJobData',
|
|
@@ -30554,9 +30569,6 @@ Internal.define({
|
|
|
30554
30569
|
'/acs/v1/access_records': {
|
|
30555
30570
|
GET: 'listAcsAccessRecord',
|
|
30556
30571
|
},
|
|
30557
|
-
'/acs/v1/access_records/{access_record_id}/access_photo': {
|
|
30558
|
-
GET: 'getAcsAccessRecordAccessPhoto',
|
|
30559
|
-
},
|
|
30560
30572
|
'/performance/v1/semesters': {
|
|
30561
30573
|
GET: 'listPerformanceSemester',
|
|
30562
30574
|
},
|
|
@@ -30599,9 +30611,6 @@ Internal.define({
|
|
|
30599
30611
|
'/lingo/v1/repos': {
|
|
30600
30612
|
GET: 'listLingoRepo',
|
|
30601
30613
|
},
|
|
30602
|
-
'/lingo/v1/files/{file_token}/download': {
|
|
30603
|
-
GET: 'downloadLingoFile',
|
|
30604
|
-
},
|
|
30605
30614
|
'/security_and_compliance/v1/openapi_logs/list_data': {
|
|
30606
30615
|
POST: 'listDataSecurityAndComplianceOpenapiLog',
|
|
30607
30616
|
},
|
|
@@ -30682,9 +30691,6 @@ Internal.define({
|
|
|
30682
30691
|
'/baike/v1/classifications': {
|
|
30683
30692
|
GET: 'listBaikeClassification',
|
|
30684
30693
|
},
|
|
30685
|
-
'/baike/v1/files/{file_token}/download': {
|
|
30686
|
-
GET: 'downloadBaikeFile',
|
|
30687
|
-
},
|
|
30688
30694
|
'/hire/v1/applications/{application_id}/interviews': {
|
|
30689
30695
|
GET: 'listHireApplicationInterview',
|
|
30690
30696
|
},
|
package/src/types/internal.ts
CHANGED
|
@@ -12,7 +12,7 @@ export interface BaseResponse {
|
|
|
12
12
|
|
|
13
13
|
export interface InternalConfig {
|
|
14
14
|
multipart?: boolean
|
|
15
|
-
|
|
15
|
+
type?: 'json-body' | 'binary'
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
export class Internal {
|
|
@@ -66,9 +66,16 @@ export class Internal {
|
|
|
66
66
|
} else if (args.length > 1) {
|
|
67
67
|
throw new Error(`too many arguments for ${path}, received ${raw}`)
|
|
68
68
|
}
|
|
69
|
+
if (options.type === 'binary') {
|
|
70
|
+
config.responseType = 'arraybuffer'
|
|
71
|
+
}
|
|
69
72
|
const response = await this.bot.http(method, url, config)
|
|
70
73
|
this._assertResponse(response)
|
|
71
|
-
|
|
74
|
+
if (options.type === 'json-body' || options.type === 'binary') {
|
|
75
|
+
return response.data
|
|
76
|
+
} else {
|
|
77
|
+
return response.data.data
|
|
78
|
+
}
|
|
72
79
|
}
|
|
73
80
|
}
|
|
74
81
|
}
|
package/src/utils.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import crypto from 'crypto'
|
|
2
|
-
import { Context, h, Session,
|
|
2
|
+
import { Context, h, Session, Universal } from '@satorijs/core'
|
|
3
3
|
import { LarkBot } from './bot'
|
|
4
4
|
import { EventPayload, Events, GetImChatResponse, Lark } from './types'
|
|
5
5
|
|
|
@@ -24,7 +24,6 @@ export function adaptSender(sender: Sender, session: Session): Session {
|
|
|
24
24
|
|
|
25
25
|
export async function adaptMessage(bot: LarkBot, data: Events['im.message.receive_v1'], session: Session, details = true): Promise<Session> {
|
|
26
26
|
const json = JSON.parse(data.message.content)
|
|
27
|
-
const assetEndpoint = trimSlash(bot.config.selfUrl ?? bot.ctx.server.config.selfUrl) + bot.config.path + '/assets'
|
|
28
27
|
const content: (string | h)[] = []
|
|
29
28
|
switch (data.message.message_type) {
|
|
30
29
|
case 'text': {
|
|
@@ -46,16 +45,18 @@ export async function adaptMessage(bot: LarkBot, data: Events['im.message.receiv
|
|
|
46
45
|
break
|
|
47
46
|
}
|
|
48
47
|
case 'image':
|
|
49
|
-
content.push(h.image(
|
|
48
|
+
content.push(h.image(bot.getResourceUrl('image', data.message.message_id, json.image_key)))
|
|
50
49
|
break
|
|
51
50
|
case 'audio':
|
|
52
|
-
content.push(h.audio(
|
|
51
|
+
content.push(h.audio(bot.getResourceUrl('file', data.message.message_id, json.file_key)))
|
|
53
52
|
break
|
|
54
53
|
case 'media':
|
|
55
|
-
content.push(h.video(
|
|
54
|
+
content.push(h.video(bot.getResourceUrl('file', data.message.message_id, json.file_key), {
|
|
55
|
+
poster: json.image_key,
|
|
56
|
+
}))
|
|
56
57
|
break
|
|
57
58
|
case 'file':
|
|
58
|
-
content.push(h.file(
|
|
59
|
+
content.push(h.file(bot.getResourceUrl('file', data.message.message_id, json.file_key)))
|
|
59
60
|
break
|
|
60
61
|
}
|
|
61
62
|
|
|
@@ -135,7 +136,6 @@ export async function adaptSession<C extends Context>(bot: LarkBot<C>, body: Eve
|
|
|
135
136
|
// TODO: This function has many duplicated code with `adaptMessage`, should refactor them
|
|
136
137
|
export async function decodeMessage(bot: LarkBot, body: Lark.Message, details = true): Promise<Universal.Message> {
|
|
137
138
|
const json = JSON.parse(body.body.content)
|
|
138
|
-
const assetEndpoint = trimSlash(bot.config.selfUrl ?? bot.ctx.server.config.selfUrl) + bot.config.path + '/assets'
|
|
139
139
|
const content: h[] = []
|
|
140
140
|
switch (body.msg_type) {
|
|
141
141
|
case 'text': {
|
|
@@ -157,16 +157,18 @@ export async function decodeMessage(bot: LarkBot, body: Lark.Message, details =
|
|
|
157
157
|
break
|
|
158
158
|
}
|
|
159
159
|
case 'image':
|
|
160
|
-
content.push(h.image(
|
|
160
|
+
content.push(h.image(bot.getResourceUrl('image', body.message_id, json.image_key)))
|
|
161
161
|
break
|
|
162
162
|
case 'audio':
|
|
163
|
-
content.push(h.audio(
|
|
163
|
+
content.push(h.audio(bot.getResourceUrl('file', body.message_id, json.file_key)))
|
|
164
164
|
break
|
|
165
165
|
case 'media':
|
|
166
|
-
content.push(h.video(
|
|
166
|
+
content.push(h.video(bot.getResourceUrl('file', body.message_id, json.file_key), {
|
|
167
|
+
poster: json.image_key,
|
|
168
|
+
}))
|
|
167
169
|
break
|
|
168
170
|
case 'file':
|
|
169
|
-
content.push(h.file(
|
|
171
|
+
content.push(h.file(bot.getResourceUrl('file', body.message_id, json.file_key)))
|
|
170
172
|
break
|
|
171
173
|
}
|
|
172
174
|
|
package/lib/index.cjs.map
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/index.ts", "../src/bot.ts", "../src/http.ts", "../src/utils.ts", "../src/message.ts", "../src/types/index.ts", "../src/types/internal.ts", "../src/types/api.ts"],
|
|
4
|
-
"mappings": "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",
|
|
5
|
-
"names": ["import_core", "import_core", "mention", "crypto", "bot", "body", "HttpServer", "import_core", "import_core", "data", "LarkBot"]
|
|
6
|
-
}
|