@luka-cat-mimi/n8n-nodes-feishu 0.7.1 → 0.7.3
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/README.md +7 -3
- package/dist/nodes/FeishuNode/resource/chat/ChatCreateOperate.d.ts +3 -0
- package/dist/nodes/FeishuNode/resource/chat/ChatCreateOperate.js +285 -0
- package/dist/nodes/FeishuNode/resource/chat/ChatCreateOperate.js.map +1 -0
- package/dist/nodes/FeishuNode/resource/chat/ChatDeleteOperate.d.ts +3 -0
- package/dist/nodes/FeishuNode/resource/chat/ChatDeleteOperate.js +94 -0
- package/dist/nodes/FeishuNode/resource/chat/ChatDeleteOperate.js.map +1 -0
- package/dist/nodes/FeishuNode/resource/chat/ChatUpdateOperate.d.ts +3 -0
- package/dist/nodes/FeishuNode/resource/chat/ChatUpdateOperate.js +301 -0
- package/dist/nodes/FeishuNode/resource/chat/ChatUpdateOperate.js.map +1 -0
- package/dist/nodes/FeishuNode/resource/space/SpaceImportOperate.d.ts +3 -0
- package/dist/nodes/FeishuNode/resource/space/SpaceImportOperate.js +235 -0
- package/dist/nodes/FeishuNode/resource/space/SpaceImportOperate.js.map +1 -0
- package/dist/package.json +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const RequestUtils_1 = __importDefault(require("../../../help/utils/RequestUtils"));
|
|
7
|
+
const NodeUtils_1 = __importDefault(require("../../../help/utils/NodeUtils"));
|
|
8
|
+
const ChatUpdateOperate = {
|
|
9
|
+
name: '更新群信息',
|
|
10
|
+
value: 'chat:update',
|
|
11
|
+
order: 6,
|
|
12
|
+
options: [
|
|
13
|
+
{
|
|
14
|
+
displayName: '群 ID',
|
|
15
|
+
name: 'chat_id',
|
|
16
|
+
type: 'string',
|
|
17
|
+
required: true,
|
|
18
|
+
default: '',
|
|
19
|
+
description: '群 ID。获取方式参见群ID说明。',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
displayName: '用户 ID 类型',
|
|
23
|
+
name: 'user_id_type',
|
|
24
|
+
type: 'options',
|
|
25
|
+
options: [
|
|
26
|
+
{ name: 'Open ID', value: 'open_id' },
|
|
27
|
+
{ name: 'Union ID', value: 'union_id' },
|
|
28
|
+
{ name: 'User ID', value: 'user_id' },
|
|
29
|
+
],
|
|
30
|
+
description: '用户 ID 类型。open_id: 标识一个用户在某个应用中的身份。union_id: 标识一个用户在某个应用开发商下的身份。user_id: 标识一个用户在某个租户内的身份。',
|
|
31
|
+
default: 'open_id',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
displayName: '群头像 Image Key',
|
|
35
|
+
name: 'avatar',
|
|
36
|
+
type: 'string',
|
|
37
|
+
default: '',
|
|
38
|
+
description: '群头像对应的 Image Key,可通过上传图片接口获取。',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
displayName: '群名称',
|
|
42
|
+
name: 'name',
|
|
43
|
+
type: 'string',
|
|
44
|
+
default: '',
|
|
45
|
+
description: '群名称。最大长度: 100 字符。',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
displayName: '群描述',
|
|
49
|
+
name: 'description',
|
|
50
|
+
type: 'string',
|
|
51
|
+
default: '',
|
|
52
|
+
description: '群描述。最大长度: 500 字符。',
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
displayName: '群消息形式',
|
|
56
|
+
name: 'group_message_type',
|
|
57
|
+
type: 'options',
|
|
58
|
+
options: [
|
|
59
|
+
{ name: '不修改', value: '' },
|
|
60
|
+
{ name: '会话消息', value: 'chat' },
|
|
61
|
+
{ name: '话题消息', value: 'thread' },
|
|
62
|
+
],
|
|
63
|
+
default: '',
|
|
64
|
+
description: '群消息形式。chat: 会话消息。thread: 话题消息。',
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
displayName: '群类型',
|
|
68
|
+
name: 'chat_type',
|
|
69
|
+
type: 'options',
|
|
70
|
+
options: [
|
|
71
|
+
{ name: '不修改', value: '' },
|
|
72
|
+
{ name: '私有群', value: 'private' },
|
|
73
|
+
{ name: '公开群', value: 'public' },
|
|
74
|
+
],
|
|
75
|
+
default: '',
|
|
76
|
+
description: '群类型。private: 私有群。public: 公开群。',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
displayName: '群主 ID',
|
|
80
|
+
name: 'owner_id',
|
|
81
|
+
type: 'string',
|
|
82
|
+
default: '',
|
|
83
|
+
description: '群主 ID。ID 类型与 user_id_type 的取值保持一致。转让群主时需要填写此字段。',
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
displayName: '发言权限',
|
|
87
|
+
name: 'add_member_permission',
|
|
88
|
+
type: 'options',
|
|
89
|
+
options: [
|
|
90
|
+
{ name: '不修改', value: '' },
|
|
91
|
+
{ name: '所有成员', value: 'all_members' },
|
|
92
|
+
{ name: '仅群主和管理员', value: 'only_owner' },
|
|
93
|
+
],
|
|
94
|
+
default: '',
|
|
95
|
+
description: '谁可以邀请成员入群。',
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
displayName: '群分享权限',
|
|
99
|
+
name: 'share_card_permission',
|
|
100
|
+
type: 'options',
|
|
101
|
+
options: [
|
|
102
|
+
{ name: '不修改', value: '' },
|
|
103
|
+
{ name: '允许分享', value: 'allowed' },
|
|
104
|
+
{ name: '不允许分享', value: 'not_allowed' },
|
|
105
|
+
],
|
|
106
|
+
default: '',
|
|
107
|
+
description: '群成员是否可以分享群名片。',
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
displayName: '@所有人 权限',
|
|
111
|
+
name: 'at_all_permission',
|
|
112
|
+
type: 'options',
|
|
113
|
+
options: [
|
|
114
|
+
{ name: '不修改', value: '' },
|
|
115
|
+
{ name: '所有成员', value: 'all_members' },
|
|
116
|
+
{ name: '仅群主和管理员', value: 'only_owner' },
|
|
117
|
+
],
|
|
118
|
+
default: '',
|
|
119
|
+
description: '谁可以 @所有人。',
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
displayName: '群编辑权限',
|
|
123
|
+
name: 'edit_permission',
|
|
124
|
+
type: 'options',
|
|
125
|
+
options: [
|
|
126
|
+
{ name: '不修改', value: '' },
|
|
127
|
+
{ name: '所有成员', value: 'all_members' },
|
|
128
|
+
{ name: '仅群主和管理员', value: 'only_owner' },
|
|
129
|
+
],
|
|
130
|
+
default: '',
|
|
131
|
+
description: '谁可以编辑群信息。',
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
displayName: '入群消息可见性',
|
|
135
|
+
name: 'join_message_visibility',
|
|
136
|
+
type: 'options',
|
|
137
|
+
options: [
|
|
138
|
+
{ name: '不修改', value: '' },
|
|
139
|
+
{ name: '仅群主和管理员可见', value: 'only_owner' },
|
|
140
|
+
{ name: '所有成员可见', value: 'all_members' },
|
|
141
|
+
{ name: '任何人均不可见', value: 'not_anyone' },
|
|
142
|
+
],
|
|
143
|
+
default: '',
|
|
144
|
+
description: '入群消息可见性。',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
displayName: '退群消息可见性',
|
|
148
|
+
name: 'leave_message_visibility',
|
|
149
|
+
type: 'options',
|
|
150
|
+
options: [
|
|
151
|
+
{ name: '不修改', value: '' },
|
|
152
|
+
{ name: '仅群主和管理员可见', value: 'only_owner' },
|
|
153
|
+
{ name: '所有成员可见', value: 'all_members' },
|
|
154
|
+
{ name: '任何人均不可见', value: 'not_anyone' },
|
|
155
|
+
],
|
|
156
|
+
default: '',
|
|
157
|
+
description: '退群消息可见性。',
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
displayName: '加群审批',
|
|
161
|
+
name: 'membership_approval',
|
|
162
|
+
type: 'options',
|
|
163
|
+
options: [
|
|
164
|
+
{ name: '不修改', value: '' },
|
|
165
|
+
{ name: '无需审批', value: 'no_approval_required' },
|
|
166
|
+
{ name: '需要群主或管理员审批', value: 'approval_required' },
|
|
167
|
+
],
|
|
168
|
+
default: '',
|
|
169
|
+
description: '加群审批配置。',
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
displayName: '其他请求体参数',
|
|
173
|
+
name: 'body',
|
|
174
|
+
type: 'json',
|
|
175
|
+
default: '{}',
|
|
176
|
+
description: '其他请求体参数(如 i18n_names、labels、restricted_mode_setting、urgent_setting、video_conference_setting、hide_member_count_setting、chat_tags 等)。参考: https://open.feishu.cn/document/server-docs/group/chat/update-2',
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
displayName: 'Options',
|
|
180
|
+
name: 'options',
|
|
181
|
+
type: 'collection',
|
|
182
|
+
placeholder: 'Add option',
|
|
183
|
+
default: {},
|
|
184
|
+
options: [
|
|
185
|
+
{
|
|
186
|
+
displayName: 'Batching',
|
|
187
|
+
name: 'batching',
|
|
188
|
+
placeholder: 'Add Batching',
|
|
189
|
+
type: 'fixedCollection',
|
|
190
|
+
typeOptions: {
|
|
191
|
+
multipleValues: false,
|
|
192
|
+
},
|
|
193
|
+
default: {
|
|
194
|
+
batch: {},
|
|
195
|
+
},
|
|
196
|
+
options: [
|
|
197
|
+
{
|
|
198
|
+
displayName: 'Batching',
|
|
199
|
+
name: 'batch',
|
|
200
|
+
values: [
|
|
201
|
+
{
|
|
202
|
+
displayName: 'Items per Batch',
|
|
203
|
+
name: 'batchSize',
|
|
204
|
+
type: 'number',
|
|
205
|
+
typeOptions: {
|
|
206
|
+
minValue: 1,
|
|
207
|
+
},
|
|
208
|
+
default: 50,
|
|
209
|
+
description: '每批并发请求数量。添加此选项后启用并发模式。0 将被视为 1。',
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
displayName: 'Batch Interval (Ms)',
|
|
213
|
+
name: 'batchInterval',
|
|
214
|
+
type: 'number',
|
|
215
|
+
typeOptions: {
|
|
216
|
+
minValue: 0,
|
|
217
|
+
},
|
|
218
|
+
default: 1000,
|
|
219
|
+
description: '每批请求之间的时间(毫秒)。0 表示禁用。',
|
|
220
|
+
},
|
|
221
|
+
],
|
|
222
|
+
},
|
|
223
|
+
],
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
displayName: 'Timeout',
|
|
227
|
+
name: 'timeout',
|
|
228
|
+
type: 'number',
|
|
229
|
+
typeOptions: {
|
|
230
|
+
minValue: 0,
|
|
231
|
+
},
|
|
232
|
+
default: 0,
|
|
233
|
+
description: '等待服务器发送响应头(并开始响应体)的时间(毫秒),超过此时间将中止请求。0 表示不限制超时。',
|
|
234
|
+
},
|
|
235
|
+
],
|
|
236
|
+
},
|
|
237
|
+
],
|
|
238
|
+
async call(index) {
|
|
239
|
+
const chat_id = this.getNodeParameter('chat_id', index);
|
|
240
|
+
const user_id_type = this.getNodeParameter('user_id_type', index, 'open_id');
|
|
241
|
+
const avatar = this.getNodeParameter('avatar', index, '');
|
|
242
|
+
const name = this.getNodeParameter('name', index, '');
|
|
243
|
+
const description = this.getNodeParameter('description', index, '');
|
|
244
|
+
const group_message_type = this.getNodeParameter('group_message_type', index, '');
|
|
245
|
+
const chat_type = this.getNodeParameter('chat_type', index, '');
|
|
246
|
+
const owner_id = this.getNodeParameter('owner_id', index, '');
|
|
247
|
+
const add_member_permission = this.getNodeParameter('add_member_permission', index, '');
|
|
248
|
+
const share_card_permission = this.getNodeParameter('share_card_permission', index, '');
|
|
249
|
+
const at_all_permission = this.getNodeParameter('at_all_permission', index, '');
|
|
250
|
+
const edit_permission = this.getNodeParameter('edit_permission', index, '');
|
|
251
|
+
const join_message_visibility = this.getNodeParameter('join_message_visibility', index, '');
|
|
252
|
+
const leave_message_visibility = this.getNodeParameter('leave_message_visibility', index, '');
|
|
253
|
+
const membership_approval = this.getNodeParameter('membership_approval', index, '');
|
|
254
|
+
const extObject = NodeUtils_1.default.getNodeJsonData(this, 'body', index);
|
|
255
|
+
const options = this.getNodeParameter('options', index, {});
|
|
256
|
+
const qs = {
|
|
257
|
+
user_id_type,
|
|
258
|
+
};
|
|
259
|
+
const body = {
|
|
260
|
+
...extObject,
|
|
261
|
+
};
|
|
262
|
+
if (avatar)
|
|
263
|
+
body.avatar = avatar;
|
|
264
|
+
if (name)
|
|
265
|
+
body.name = name;
|
|
266
|
+
if (description)
|
|
267
|
+
body.description = description;
|
|
268
|
+
if (group_message_type)
|
|
269
|
+
body.group_message_type = group_message_type;
|
|
270
|
+
if (chat_type)
|
|
271
|
+
body.chat_type = chat_type;
|
|
272
|
+
if (owner_id)
|
|
273
|
+
body.owner_id = owner_id;
|
|
274
|
+
if (add_member_permission)
|
|
275
|
+
body.add_member_permission = add_member_permission;
|
|
276
|
+
if (share_card_permission)
|
|
277
|
+
body.share_card_permission = share_card_permission;
|
|
278
|
+
if (at_all_permission)
|
|
279
|
+
body.at_all_permission = at_all_permission;
|
|
280
|
+
if (edit_permission)
|
|
281
|
+
body.edit_permission = edit_permission;
|
|
282
|
+
if (join_message_visibility)
|
|
283
|
+
body.join_message_visibility = join_message_visibility;
|
|
284
|
+
if (leave_message_visibility)
|
|
285
|
+
body.leave_message_visibility = leave_message_visibility;
|
|
286
|
+
if (membership_approval)
|
|
287
|
+
body.membership_approval = membership_approval;
|
|
288
|
+
const requestOptions = {
|
|
289
|
+
method: 'PUT',
|
|
290
|
+
url: `/open-apis/im/v1/chats/${chat_id}`,
|
|
291
|
+
qs,
|
|
292
|
+
body,
|
|
293
|
+
};
|
|
294
|
+
if (options.timeout) {
|
|
295
|
+
requestOptions.timeout = options.timeout;
|
|
296
|
+
}
|
|
297
|
+
return RequestUtils_1.default.request.call(this, requestOptions);
|
|
298
|
+
},
|
|
299
|
+
};
|
|
300
|
+
exports.default = ChatUpdateOperate;
|
|
301
|
+
//# sourceMappingURL=ChatUpdateOperate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChatUpdateOperate.js","sourceRoot":"","sources":["../../../../../nodes/FeishuNode/resource/chat/ChatUpdateOperate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const n8n_workflow_1 = require("n8n-workflow");
|
|
7
|
+
const RequestUtils_1 = __importDefault(require("../../../help/utils/RequestUtils"));
|
|
8
|
+
const JOB_STATUS = {
|
|
9
|
+
SUCCESS: 0,
|
|
10
|
+
INITIALIZING: 1,
|
|
11
|
+
PROCESSING: 2,
|
|
12
|
+
INTERNAL_ERROR: 3,
|
|
13
|
+
FILE_TOO_LARGE: 107,
|
|
14
|
+
TIMEOUT: 108,
|
|
15
|
+
NO_PERMISSION: 110,
|
|
16
|
+
FILE_DELETED: 111,
|
|
17
|
+
FILE_NOT_FOUND: 123,
|
|
18
|
+
};
|
|
19
|
+
const JOB_ERROR_MESSAGES = {
|
|
20
|
+
[JOB_STATUS.INTERNAL_ERROR]: '内部错误',
|
|
21
|
+
[JOB_STATUS.FILE_TOO_LARGE]: '导入文件过大',
|
|
22
|
+
[JOB_STATUS.TIMEOUT]: '处理超时',
|
|
23
|
+
[JOB_STATUS.NO_PERMISSION]: '无权限',
|
|
24
|
+
[JOB_STATUS.FILE_DELETED]: '导入文件已删除',
|
|
25
|
+
[JOB_STATUS.FILE_NOT_FOUND]: '导入文件不存在',
|
|
26
|
+
};
|
|
27
|
+
const SpaceImportOperate = {
|
|
28
|
+
name: '导入文件',
|
|
29
|
+
value: 'space:import',
|
|
30
|
+
order: 55,
|
|
31
|
+
options: [
|
|
32
|
+
{
|
|
33
|
+
displayName: '导入文件指将本地文件如 Word、TXT、Markdown、Excel 等格式的文件导入为某种格式的云文档,如在线文档、电子表格、多维表格等,并放置到云空间指定目录中。<a target="_blank" href="https://open.feishu.cn/document/server-docs/docs/drive-v1/import_task/import-user-guide">详细文档</a>',
|
|
34
|
+
name: 'importNotice',
|
|
35
|
+
type: 'notice',
|
|
36
|
+
default: '',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
displayName: '文件扩展名',
|
|
40
|
+
name: 'file_extension',
|
|
41
|
+
type: 'options',
|
|
42
|
+
options: [
|
|
43
|
+
{ name: 'Microsoft Word (DOCX) - 上限 600MB', value: 'docx' },
|
|
44
|
+
{ name: 'Microsoft Word 97-2004 (DOC) - 上限 600MB', value: 'doc' },
|
|
45
|
+
{ name: 'Microsoft Excel (XLSX) - 上限 800MB', value: 'xlsx' },
|
|
46
|
+
{ name: 'Microsoft Excel 97-2003 (XLS) - 上限 20MB', value: 'xls' },
|
|
47
|
+
{ name: 'CSV - 上限 20MB(Sheet)/100MB(Bitable)', value: 'csv' },
|
|
48
|
+
{ name: 'Markdown (MD) - 上限 20MB', value: 'md' },
|
|
49
|
+
{ name: 'Markdown (MARKDOWN) - 上限 20MB', value: 'markdown' },
|
|
50
|
+
{ name: 'Markdown (MARK) - 上限 20MB', value: 'mark' },
|
|
51
|
+
{ name: 'HTML - 上限 20MB', value: 'html' },
|
|
52
|
+
{ name: '纯文本 (TXT) - 上限 20MB', value: 'txt' },
|
|
53
|
+
],
|
|
54
|
+
required: true,
|
|
55
|
+
default: 'xlsx',
|
|
56
|
+
description: '要导入的文件的扩展名。注意:此处填写的文件扩展名需与实际文件的后缀名保持严格一致。',
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
displayName: '文件 Token',
|
|
60
|
+
name: 'file_token',
|
|
61
|
+
type: 'string',
|
|
62
|
+
required: true,
|
|
63
|
+
default: '',
|
|
64
|
+
description: '要导入文件的 token。创建任务前,需先调用上传素材或上传文件接口获取源文件的 token。最大长度 27 字符。',
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
displayName: '目标云文档类型',
|
|
68
|
+
name: 'type',
|
|
69
|
+
type: 'hidden',
|
|
70
|
+
default: 'docx',
|
|
71
|
+
displayOptions: {
|
|
72
|
+
show: {
|
|
73
|
+
file_extension: ['docx', 'doc', 'txt', 'md', 'markdown', 'mark', 'html'],
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
displayName: '目标云文档类型',
|
|
79
|
+
name: 'type',
|
|
80
|
+
type: 'options',
|
|
81
|
+
options: [
|
|
82
|
+
{ name: '飞书电子表格 (Sheet)', value: 'sheet' },
|
|
83
|
+
{ name: '飞书多维表格 (Bitable)', value: 'bitable' },
|
|
84
|
+
],
|
|
85
|
+
required: true,
|
|
86
|
+
default: 'sheet',
|
|
87
|
+
description: 'XLSX 和 CSV 文件可导入为电子表格或多维表格。',
|
|
88
|
+
displayOptions: {
|
|
89
|
+
show: {
|
|
90
|
+
file_extension: ['xlsx', 'csv'],
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
displayName: '目标云文档类型',
|
|
96
|
+
name: 'type',
|
|
97
|
+
type: 'hidden',
|
|
98
|
+
default: 'sheet',
|
|
99
|
+
displayOptions: {
|
|
100
|
+
show: {
|
|
101
|
+
file_extension: ['xls'],
|
|
102
|
+
},
|
|
103
|
+
},
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
displayName: '挂载文件夹 Token',
|
|
107
|
+
name: 'mount_key',
|
|
108
|
+
type: 'string',
|
|
109
|
+
required: true,
|
|
110
|
+
default: '',
|
|
111
|
+
description: '云文档挂载的文件夹的 token,即云空间下文件夹的 token。空表示云空间根目录。',
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
displayName: 'Options',
|
|
115
|
+
name: 'options',
|
|
116
|
+
type: 'collection',
|
|
117
|
+
placeholder: '添加选项',
|
|
118
|
+
default: {},
|
|
119
|
+
options: [
|
|
120
|
+
{
|
|
121
|
+
displayName: '自定义文件名',
|
|
122
|
+
name: 'file_name',
|
|
123
|
+
type: 'string',
|
|
124
|
+
default: '',
|
|
125
|
+
description: '导入后的在线云文档名称。参数为空时,使用上传本地文件时的文件名。',
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
displayName: '轮询间隔 (毫秒)',
|
|
129
|
+
name: 'pollInterval',
|
|
130
|
+
type: 'number',
|
|
131
|
+
typeOptions: {
|
|
132
|
+
minValue: 1000,
|
|
133
|
+
},
|
|
134
|
+
default: 2000,
|
|
135
|
+
description: '查询导入任务状态的轮询间隔时间(毫秒)。',
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
displayName: '最大轮询次数',
|
|
139
|
+
name: 'maxPolls',
|
|
140
|
+
type: 'number',
|
|
141
|
+
typeOptions: {
|
|
142
|
+
minValue: 1,
|
|
143
|
+
},
|
|
144
|
+
default: 60,
|
|
145
|
+
description: '查询导入任务状态的最大轮询次数。超过后将抛出超时错误。',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
displayName: 'Timeout',
|
|
149
|
+
name: 'timeout',
|
|
150
|
+
type: 'number',
|
|
151
|
+
typeOptions: {
|
|
152
|
+
minValue: 0,
|
|
153
|
+
},
|
|
154
|
+
default: 0,
|
|
155
|
+
description: '等待服务器发送响应头(并开始响应体)的时间(毫秒),超过此时间将中止请求。0 表示不限制超时。',
|
|
156
|
+
},
|
|
157
|
+
],
|
|
158
|
+
},
|
|
159
|
+
],
|
|
160
|
+
async call(index) {
|
|
161
|
+
const file_extension = this.getNodeParameter('file_extension', index);
|
|
162
|
+
const file_token = this.getNodeParameter('file_token', index);
|
|
163
|
+
const type = this.getNodeParameter('type', index);
|
|
164
|
+
const mount_key = this.getNodeParameter('mount_key', index);
|
|
165
|
+
const options = this.getNodeParameter('options', index, {});
|
|
166
|
+
const pollInterval = options.pollInterval || 2000;
|
|
167
|
+
const maxPolls = options.maxPolls || 60;
|
|
168
|
+
const baseRequestOptions = {};
|
|
169
|
+
if (options.timeout) {
|
|
170
|
+
baseRequestOptions.timeout = options.timeout;
|
|
171
|
+
}
|
|
172
|
+
const createBody = {
|
|
173
|
+
file_extension,
|
|
174
|
+
file_token,
|
|
175
|
+
type,
|
|
176
|
+
point: {
|
|
177
|
+
mount_type: 1,
|
|
178
|
+
mount_key,
|
|
179
|
+
},
|
|
180
|
+
};
|
|
181
|
+
if (options.file_name) {
|
|
182
|
+
createBody.file_name = options.file_name;
|
|
183
|
+
}
|
|
184
|
+
const createResponse = await RequestUtils_1.default.request.call(this, {
|
|
185
|
+
method: 'POST',
|
|
186
|
+
url: '/open-apis/drive/v1/import_tasks',
|
|
187
|
+
body: createBody,
|
|
188
|
+
...baseRequestOptions,
|
|
189
|
+
});
|
|
190
|
+
const ticket = createResponse.ticket;
|
|
191
|
+
if (!ticket) {
|
|
192
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), '创建导入任务失败:未返回 ticket');
|
|
193
|
+
}
|
|
194
|
+
let pollCount = 0;
|
|
195
|
+
let importResult = null;
|
|
196
|
+
while (pollCount < maxPolls) {
|
|
197
|
+
const queryResponse = await RequestUtils_1.default.request.call(this, {
|
|
198
|
+
method: 'GET',
|
|
199
|
+
url: `/open-apis/drive/v1/import_tasks/${ticket}`,
|
|
200
|
+
...baseRequestOptions,
|
|
201
|
+
});
|
|
202
|
+
const result = queryResponse.result;
|
|
203
|
+
if (!result) {
|
|
204
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), '查询导入任务失败:未返回 result');
|
|
205
|
+
}
|
|
206
|
+
const jobStatus = result.job_status;
|
|
207
|
+
if (jobStatus === JOB_STATUS.SUCCESS) {
|
|
208
|
+
importResult = result;
|
|
209
|
+
break;
|
|
210
|
+
}
|
|
211
|
+
else if (jobStatus === JOB_STATUS.INITIALIZING || jobStatus === JOB_STATUS.PROCESSING) {
|
|
212
|
+
await (0, n8n_workflow_1.sleep)(pollInterval);
|
|
213
|
+
pollCount++;
|
|
214
|
+
}
|
|
215
|
+
else {
|
|
216
|
+
const errorMsg = JOB_ERROR_MESSAGES[jobStatus] || result.job_error_msg || '未知错误';
|
|
217
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `导入任务失败 (状态码: ${jobStatus}): ${errorMsg}`);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
if (!importResult) {
|
|
221
|
+
throw new n8n_workflow_1.NodeOperationError(this.getNode(), `导入任务超时:已轮询 ${maxPolls} 次,任务仍未完成`);
|
|
222
|
+
}
|
|
223
|
+
return {
|
|
224
|
+
ticket,
|
|
225
|
+
type: importResult.type,
|
|
226
|
+
token: importResult.token,
|
|
227
|
+
url: importResult.url,
|
|
228
|
+
extra: importResult.extra,
|
|
229
|
+
job_status: importResult.job_status,
|
|
230
|
+
job_error_msg: importResult.job_error_msg,
|
|
231
|
+
};
|
|
232
|
+
},
|
|
233
|
+
};
|
|
234
|
+
exports.default = SpaceImportOperate;
|
|
235
|
+
//# sourceMappingURL=SpaceImportOperate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpaceImportOperate.js","sourceRoot":"","sources":["../../../../../nodes/FeishuNode/resource/space/SpaceImportOperate.ts"],"names":[],"mappings":"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"}
|