n8n-nodes-discord-dnd 0.1.71 → 0.1.73
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.
@@ -11,7 +11,7 @@ class DiscordEventHandler {
|
|
11
11
|
async setupEventHandler(event) {
|
12
12
|
// Handle main events
|
13
13
|
this.client.on(event, async (...args) => {
|
14
|
-
var _a, _b, _c, _d, _e, _f
|
14
|
+
var _a, _b, _c, _d, _e, _f;
|
15
15
|
const data = {};
|
16
16
|
// Helper to enrich user/member info with roles
|
17
17
|
const enrichMember = async (memberOrUser, guildId) => {
|
@@ -24,8 +24,7 @@ class DiscordEventHandler {
|
|
24
24
|
return {
|
25
25
|
...memberOrUser,
|
26
26
|
roles: (member === null || member === void 0 ? void 0 : member.roles.cache.map((role) => ({
|
27
|
-
|
28
|
-
name: role.name,
|
27
|
+
...role,
|
29
28
|
}))) || [],
|
30
29
|
};
|
31
30
|
};
|
@@ -39,7 +38,7 @@ class DiscordEventHandler {
|
|
39
38
|
data.user = await enrichMember(message.author, message.guildId);
|
40
39
|
}
|
41
40
|
else {
|
42
|
-
data.user = message.author;
|
41
|
+
data.user = { ...message.author };
|
43
42
|
}
|
44
43
|
break;
|
45
44
|
case discord_js_1.Events.MessageDelete:
|
@@ -51,21 +50,12 @@ class DiscordEventHandler {
|
|
51
50
|
const channelMessageDeleteBulk = args[1]; // TextBasedChannel
|
52
51
|
// Trích xuất thông tin kênh
|
53
52
|
data.channel = {
|
54
|
-
|
55
|
-
name: channelMessageDeleteBulk.name || "DM",
|
56
|
-
guildId: channelMessageDeleteBulk.guildId || null,
|
57
|
-
type: channelMessageDeleteBulk.type,
|
53
|
+
...channelMessageDeleteBulk,
|
58
54
|
};
|
59
55
|
// Trích xuất danh sách tin nhắn bị xóa
|
60
|
-
data.deletedMessages = deletedMessages.map((message) => {
|
61
|
-
|
62
|
-
|
63
|
-
id: message.id,
|
64
|
-
content: message.content || "",
|
65
|
-
authorId: (_a = message.author) === null || _a === void 0 ? void 0 : _a.id,
|
66
|
-
createdTimestamp: message.createdTimestamp,
|
67
|
-
});
|
68
|
-
});
|
56
|
+
data.deletedMessages = deletedMessages.map((message) => ({
|
57
|
+
...message,
|
58
|
+
}));
|
69
59
|
// Tổng số tin nhắn bị xóa
|
70
60
|
data.deletedCount = deletedMessages.size;
|
71
61
|
break;
|
@@ -77,39 +67,33 @@ class DiscordEventHandler {
|
|
77
67
|
break;
|
78
68
|
case discord_js_1.Events.MessageReactionAdd:
|
79
69
|
case discord_js_1.Events.MessageReactionRemove:
|
80
|
-
const
|
70
|
+
const messageReaction = args[0];
|
81
71
|
const reactUser = args[1];
|
82
|
-
|
83
|
-
data.
|
72
|
+
const details = args[2]; // MessageReactionEventDetails
|
73
|
+
data.messageReaction = { ...messageReaction };
|
74
|
+
data.user = await enrichMember(reactUser, messageReaction.message.guildId || undefined);
|
75
|
+
data.details = { ...details };
|
84
76
|
break;
|
85
77
|
case discord_js_1.Events.MessageReactionRemoveAll:
|
86
78
|
const messageReactionRemoved = args[0];
|
79
|
+
const reactions = args[1]; // Collection<Snowflake, MessageReaction>
|
87
80
|
data.message = { ...messageReactionRemoved };
|
81
|
+
data.reactions = reactions.map((reaction) => ({
|
82
|
+
...reaction,
|
83
|
+
}));
|
88
84
|
break;
|
89
85
|
case discord_js_1.Events.MessageReactionRemoveEmoji:
|
90
86
|
const reactionMessageReactionRemoveEmoji = args[0]; // MessageReaction
|
91
|
-
console.log(`🚀 ~ messageReactionRemoveEmoji - Emoji ${reactionMessageReactionRemoveEmoji.emoji.name} removed from message ${reactionMessageReactionRemoveEmoji.message.id}`);
|
92
87
|
// Trích xuất thông tin tin nhắn và reaction
|
93
88
|
data.reaction = {
|
94
|
-
|
95
|
-
id: reactionMessageReactionRemoveEmoji.emoji.id,
|
96
|
-
name: reactionMessageReactionRemoveEmoji.emoji.name,
|
97
|
-
animated: reactionMessageReactionRemoveEmoji.emoji.animated || false,
|
98
|
-
},
|
99
|
-
message: {
|
100
|
-
id: reactionMessageReactionRemoveEmoji.message.id,
|
101
|
-
channelId: reactionMessageReactionRemoveEmoji.message.channelId,
|
102
|
-
guildId: reactionMessageReactionRemoveEmoji.message.guildId || null,
|
103
|
-
content: reactionMessageReactionRemoveEmoji.message.content || "",
|
104
|
-
authorId: (_a = reactionMessageReactionRemoveEmoji.message.author) === null || _a === void 0 ? void 0 : _a.id,
|
105
|
-
},
|
89
|
+
...reactionMessageReactionRemoveEmoji,
|
106
90
|
};
|
107
91
|
break;
|
108
92
|
case discord_js_1.Events.TypingStart:
|
109
93
|
const typing = args[0];
|
110
94
|
data.typing = { ...typing };
|
111
95
|
if (typing.user) {
|
112
|
-
data.user = await enrichMember(typing.user
|
96
|
+
data.user = await enrichMember(typing.user);
|
113
97
|
}
|
114
98
|
break;
|
115
99
|
// Guild events
|
@@ -143,12 +127,12 @@ class DiscordEventHandler {
|
|
143
127
|
guildId: latestPinnedMessage.guildId,
|
144
128
|
createdTimestamp: latestPinnedMessage.createdTimestamp,
|
145
129
|
author: {
|
146
|
-
id: (
|
147
|
-
username: (
|
148
|
-
discriminator: (
|
149
|
-
globalName: (
|
150
|
-
avatar: (
|
151
|
-
bot: (
|
130
|
+
id: (_a = latestPinnedMessage.author) === null || _a === void 0 ? void 0 : _a.id,
|
131
|
+
username: (_b = latestPinnedMessage.author) === null || _b === void 0 ? void 0 : _b.username,
|
132
|
+
discriminator: (_c = latestPinnedMessage.author) === null || _c === void 0 ? void 0 : _c.discriminator,
|
133
|
+
globalName: (_d = latestPinnedMessage.author) === null || _d === void 0 ? void 0 : _d.globalName,
|
134
|
+
avatar: (_e = latestPinnedMessage.author) === null || _e === void 0 ? void 0 : _e.avatar,
|
135
|
+
bot: (_f = latestPinnedMessage.author) === null || _f === void 0 ? void 0 : _f.bot,
|
152
136
|
},
|
153
137
|
pinned: latestPinnedMessage.pinned,
|
154
138
|
pinnedAt: pinTimestamp.toISOString(), // Thời gian ghim (dùng pinTimestamp từ sự kiện)
|
@@ -163,15 +147,9 @@ class DiscordEventHandler {
|
|
163
147
|
data.pinnedMessage = null;
|
164
148
|
}
|
165
149
|
// Lưu toàn bộ danh sách tin nhắn ghim (nếu cần)
|
166
|
-
data.pinnedMessages = pinnedMessages.map((message) => {
|
167
|
-
|
168
|
-
|
169
|
-
id: message.id,
|
170
|
-
content: message.content,
|
171
|
-
authorId: (_a = message.author) === null || _a === void 0 ? void 0 : _a.id,
|
172
|
-
createdTimestamp: message.createdTimestamp,
|
173
|
-
});
|
174
|
-
});
|
150
|
+
data.pinnedMessages = pinnedMessages.map((message) => ({
|
151
|
+
...message,
|
152
|
+
}));
|
175
153
|
}
|
176
154
|
catch (error) {
|
177
155
|
console.error("Lỗi khi fetch tin nhắn ghim:", error);
|
@@ -189,40 +167,19 @@ class DiscordEventHandler {
|
|
189
167
|
const guildAvailable = args[0]; // Đối tượng Guild
|
190
168
|
// Trích xuất thông tin chi tiết từ guild
|
191
169
|
data.guild = {
|
192
|
-
|
193
|
-
name: guildAvailable.name,
|
194
|
-
icon: guildAvailable.icon,
|
195
|
-
description: guildAvailable.description,
|
196
|
-
memberCount: guildAvailable.memberCount,
|
197
|
-
ownerId: guildAvailable.ownerId,
|
198
|
-
joinedTimestamp: guildAvailable.joinedTimestamp,
|
199
|
-
available: guildAvailable.available,
|
170
|
+
...guildAvailable,
|
200
171
|
channels: guildAvailable.channels.cache.map((channel) => ({
|
201
|
-
|
202
|
-
|
203
|
-
|
172
|
+
...channel,
|
173
|
+
})),
|
174
|
+
roles: guildAvailable.roles.cache.map((role) => ({
|
175
|
+
...role,
|
204
176
|
})),
|
205
|
-
roles: guildAvailable.roles.cache.map((role) => {
|
206
|
-
var _a;
|
207
|
-
return ({
|
208
|
-
id: role.id,
|
209
|
-
name: role.name,
|
210
|
-
color: role.color,
|
211
|
-
permissions: (_a = role.permissions) === null || _a === void 0 ? void 0 : _a.bitfield,
|
212
|
-
});
|
213
|
-
}),
|
214
177
|
// Nếu cần, fetch owner của guild
|
215
178
|
owner: await guildAvailable
|
216
179
|
.fetchOwner()
|
217
|
-
.then((owner) => {
|
218
|
-
|
219
|
-
|
220
|
-
id: owner.id,
|
221
|
-
username: (_a = owner.user) === null || _a === void 0 ? void 0 : _a.username,
|
222
|
-
globalName: (_b = owner.user) === null || _b === void 0 ? void 0 : _b.globalName,
|
223
|
-
nickname: owner.nickname,
|
224
|
-
});
|
225
|
-
})
|
180
|
+
.then((owner) => ({
|
181
|
+
...owner,
|
182
|
+
}))
|
226
183
|
.catch((error) => {
|
227
184
|
console.error("Lỗi khi fetch owner:", error);
|
228
185
|
return null;
|
@@ -233,39 +190,18 @@ class DiscordEventHandler {
|
|
233
190
|
const guildCreated = args[0]; // Guild
|
234
191
|
console.log(`🚀 ~ guildCreate - Bot được thêm vào guild ${guildCreated.name} (ID: ${guildCreated.id})`);
|
235
192
|
data.guild = {
|
236
|
-
|
237
|
-
name: guildCreated.name,
|
238
|
-
icon: guildCreated.icon,
|
239
|
-
description: guildCreated.description,
|
240
|
-
memberCount: guildCreated.memberCount,
|
241
|
-
ownerId: guildCreated.ownerId,
|
242
|
-
joinedTimestamp: guildCreated.joinedTimestamp,
|
243
|
-
available: guildCreated.available,
|
193
|
+
...guildCreated,
|
244
194
|
channels: guildCreated.channels.cache.map((channel) => ({
|
245
|
-
|
246
|
-
|
247
|
-
|
195
|
+
...channel,
|
196
|
+
})),
|
197
|
+
roles: guildCreated.roles.cache.map((role) => ({
|
198
|
+
...role,
|
248
199
|
})),
|
249
|
-
roles: guildCreated.roles.cache.map((role) => {
|
250
|
-
var _a;
|
251
|
-
return ({
|
252
|
-
id: role.id,
|
253
|
-
name: role.name,
|
254
|
-
color: role.color,
|
255
|
-
permissions: (_a = role.permissions) === null || _a === void 0 ? void 0 : _a.bitfield,
|
256
|
-
});
|
257
|
-
}),
|
258
200
|
owner: await guildCreated
|
259
201
|
.fetchOwner()
|
260
|
-
.then((owner) => {
|
261
|
-
|
262
|
-
|
263
|
-
id: owner.id,
|
264
|
-
username: (_a = owner.user) === null || _a === void 0 ? void 0 : _a.username,
|
265
|
-
globalName: (_b = owner.user) === null || _b === void 0 ? void 0 : _b.globalName,
|
266
|
-
nickname: owner.nickname,
|
267
|
-
});
|
268
|
-
})
|
202
|
+
.then((owner) => ({
|
203
|
+
...owner,
|
204
|
+
}))
|
269
205
|
.catch((error) => {
|
270
206
|
console.error("Lỗi khi fetch owner:", error);
|
271
207
|
return null;
|
@@ -274,41 +210,24 @@ class DiscordEventHandler {
|
|
274
210
|
break;
|
275
211
|
case discord_js_1.Events.GuildDelete:
|
276
212
|
const guildDeleted = args[0]; // Guild hoặc PartialGuild
|
277
|
-
console.log(`🚀 ~ guildDelete - Bot bị xóa khỏi guild ${guildDeleted.name || "unknown"} (ID: ${guildDeleted.id})`);
|
278
213
|
data.guild = {
|
279
|
-
|
280
|
-
name: guildDeleted.name || "unknown",
|
281
|
-
available: guildDeleted.available || false, // Có thể là false nếu guild không khả dụng
|
214
|
+
...guildDeleted,
|
282
215
|
};
|
283
216
|
break;
|
284
217
|
case discord_js_1.Events.GuildUnavailable:
|
285
218
|
const guildUnavailable = args[0]; // Guild
|
286
|
-
console.log(`🚀 ~ guildUnavailable - Guild ${guildUnavailable.name} (ID: ${guildUnavailable.id}) không khả dụng.`);
|
287
219
|
data.guild = {
|
288
|
-
|
289
|
-
name: guildUnavailable.name,
|
290
|
-
available: guildUnavailable.available, // Sẽ là false
|
220
|
+
...guildUnavailable,
|
291
221
|
};
|
292
222
|
break;
|
293
223
|
case discord_js_1.Events.GuildUpdate:
|
294
224
|
const oldGuild = args[0]; // Guild trước khi thay đổi
|
295
225
|
const newGuild = args[1]; // Guild sau khi thay đổi
|
296
|
-
console.log(`🚀 ~ guildUpdate - Guild ${oldGuild.name} (ID: ${oldGuild.id}) đã được cập nhật.`);
|
297
226
|
data.oldGuild = {
|
298
|
-
|
299
|
-
name: oldGuild.name,
|
300
|
-
icon: oldGuild.icon,
|
301
|
-
description: oldGuild.description,
|
302
|
-
memberCount: oldGuild.memberCount,
|
303
|
-
ownerId: oldGuild.ownerId,
|
227
|
+
...oldGuild,
|
304
228
|
};
|
305
229
|
data.newGuild = {
|
306
|
-
|
307
|
-
name: newGuild.name,
|
308
|
-
icon: newGuild.icon,
|
309
|
-
description: newGuild.description,
|
310
|
-
memberCount: newGuild.memberCount,
|
311
|
-
ownerId: newGuild.ownerId,
|
230
|
+
...newGuild,
|
312
231
|
};
|
313
232
|
// So sánh thay đổi (ví dụ: log những thay đổi chính)
|
314
233
|
data.changes = {};
|
@@ -332,48 +251,28 @@ class DiscordEventHandler {
|
|
332
251
|
case discord_js_1.Events.GuildRoleDelete:
|
333
252
|
const role = args[0];
|
334
253
|
data.role = { ...role };
|
335
|
-
data.guild = { ...role.guild };
|
336
254
|
break;
|
337
255
|
case discord_js_1.Events.GuildRoleUpdate:
|
338
256
|
const oldRole = args[0];
|
339
257
|
const newRole = args[1];
|
340
258
|
data.oldRole = { ...oldRole };
|
341
259
|
data.newRole = { ...newRole };
|
342
|
-
data.guild = { ...newRole.guild };
|
343
260
|
break;
|
344
261
|
case discord_js_1.Events.StageInstanceCreate:
|
345
|
-
const stageInstanceCreated = args[0]; // StageInstance
|
346
|
-
data.stageInstance = { ...stageInstanceCreated };
|
347
|
-
break;
|
348
262
|
case discord_js_1.Events.StageInstanceDelete:
|
349
|
-
const
|
350
|
-
data.stageInstance = {
|
351
|
-
id: stageInstanceDeleted.id,
|
352
|
-
channelId: stageInstanceDeleted.channelId,
|
353
|
-
guildId: stageInstanceDeleted.guildId,
|
354
|
-
topic: stageInstanceDeleted.topic,
|
355
|
-
privacyLevel: stageInstanceDeleted.privacyLevel,
|
356
|
-
};
|
263
|
+
const stageInstance = args[0]; // StageInstance
|
264
|
+
data.stageInstance = { ...stageInstance };
|
357
265
|
break;
|
358
266
|
case discord_js_1.Events.StageInstanceUpdate:
|
359
267
|
const oldStageInstance = args[0]; // StageInstance trước khi thay đổi
|
360
268
|
const newStageInstance = args[1]; // StageInstance sau khi thay đổi
|
361
269
|
data.oldStageInstance = oldStageInstance
|
362
270
|
? {
|
363
|
-
|
364
|
-
channelId: oldStageInstance.channelId,
|
365
|
-
guildId: oldStageInstance.guildId,
|
366
|
-
topic: oldStageInstance.topic,
|
367
|
-
privacyLevel: oldStageInstance.privacyLevel,
|
271
|
+
...oldStageInstance,
|
368
272
|
}
|
369
273
|
: null;
|
370
274
|
data.newStageInstance = {
|
371
|
-
|
372
|
-
channelId: newStageInstance.channelId,
|
373
|
-
guildId: newStageInstance.guildId,
|
374
|
-
topic: newStageInstance.topic,
|
375
|
-
privacyLevel: newStageInstance.privacyLevel,
|
376
|
-
discoverableDisabled: newStageInstance.discoverableDisabled,
|
275
|
+
...newStageInstance,
|
377
276
|
};
|
378
277
|
// So sánh thay đổi
|
379
278
|
data.changes = {};
|
@@ -394,7 +293,9 @@ class DiscordEventHandler {
|
|
394
293
|
break;
|
395
294
|
case discord_js_1.Events.ThreadCreate:
|
396
295
|
const threadCreate = args[0];
|
296
|
+
const newlyCreated = args[1];
|
397
297
|
data.thread = { ...threadCreate };
|
298
|
+
data.newlyCreated = newlyCreated; // true nếu thread mới được tạo
|
398
299
|
break;
|
399
300
|
case discord_js_1.Events.ThreadDelete:
|
400
301
|
const deletedThread = args[0];
|
@@ -402,137 +303,40 @@ class DiscordEventHandler {
|
|
402
303
|
break;
|
403
304
|
case discord_js_1.Events.ThreadListSync:
|
404
305
|
const syncedThreads = args[0]; // Collection<Snowflake, ThreadChannel>
|
405
|
-
const
|
406
|
-
const guildThreadListSync = args[2]; // Guild
|
407
|
-
console.log(`🚀 ~ threadListSync - Synced ${syncedThreads.size} threads in guild ${guildThreadListSync.name} (ID: ${guildThreadListSync.id})`);
|
408
|
-
// Trích xuất thông tin guild
|
409
|
-
data.guild = {
|
410
|
-
id: guildThreadListSync.id,
|
411
|
-
name: guildThreadListSync.name,
|
412
|
-
};
|
413
|
-
// Trích xuất danh sách kênh
|
414
|
-
data.channels = channels.map((channel) => ({
|
415
|
-
id: channel.id,
|
416
|
-
name: channel.name,
|
417
|
-
type: channel.type,
|
418
|
-
}));
|
306
|
+
const guildThreadListSync = args[1]; // Guild
|
419
307
|
// Trích xuất danh sách thread được đồng bộ
|
420
308
|
data.syncedThreads = syncedThreads.map((thread) => ({
|
421
|
-
|
422
|
-
name: thread.name,
|
423
|
-
channelId: thread.parentId,
|
424
|
-
guildId: thread.guildId,
|
425
|
-
memberCount: thread.memberCount,
|
426
|
-
createdTimestamp: thread.createdTimestamp,
|
309
|
+
...thread,
|
427
310
|
}));
|
311
|
+
data.guild = { ...guildThreadListSync };
|
312
|
+
break;
|
428
313
|
case discord_js_1.Events.ThreadMembersUpdate:
|
429
314
|
const addedMembers = args[0]; // Collection<Snowflake, ThreadMember>
|
430
315
|
const removedMembers = args[1]; // Collection<Snowflake, ThreadMember>
|
431
316
|
const threadMembersUpdate = args[2]; // ThreadChannel
|
432
|
-
console.log(`🚀 ~ threadMembersUpdate - Thread ${threadMembersUpdate.name} (ID: ${threadMembersUpdate.id}) updated members.`);
|
433
317
|
// Trích xuất thông tin thread
|
434
318
|
data.thread = {
|
435
|
-
|
436
|
-
name: threadMembersUpdate.name,
|
437
|
-
channelId: threadMembersUpdate.parentId,
|
438
|
-
guildId: threadMembersUpdate.guildId,
|
439
|
-
memberCount: threadMembersUpdate.memberCount,
|
319
|
+
...threadMembersUpdate,
|
440
320
|
};
|
441
321
|
// Trích xuất danh sách thành viên được thêm
|
442
322
|
data.addedMembers = addedMembers.map((member) => ({
|
443
|
-
|
444
|
-
userId: member.user,
|
323
|
+
...member,
|
445
324
|
}));
|
446
325
|
// Trích xuất danh sách thành viên bị xóa
|
447
326
|
data.removedMembers = removedMembers.map((member) => ({
|
448
|
-
|
449
|
-
user: member.user,
|
327
|
+
...member,
|
450
328
|
}));
|
451
|
-
// Nếu cần, fetch thông tin chi tiết của thành viên (yêu cầu GUILD_MEMBERS intent)
|
452
|
-
if (threadMembersUpdate.guild &&
|
453
|
-
(addedMembers.size > 0 || removedMembers.size > 0)) {
|
454
|
-
data.addedMembersDetails = await Promise.all(addedMembers.map(async (member) => ({
|
455
|
-
id: member.id,
|
456
|
-
user: await thread.guild.members
|
457
|
-
.fetch(member.user)
|
458
|
-
.then((m) => {
|
459
|
-
var _a, _b;
|
460
|
-
return ({
|
461
|
-
id: m.id,
|
462
|
-
username: (_a = m.user) === null || _a === void 0 ? void 0 : _a.username,
|
463
|
-
globalName: (_b = m.user) === null || _b === void 0 ? void 0 : _b.globalName,
|
464
|
-
nickname: m.nickname,
|
465
|
-
});
|
466
|
-
})
|
467
|
-
.catch(() => null),
|
468
|
-
})));
|
469
|
-
data.removedMembersDetails = await Promise.all(removedMembers.map(async (member) => ({
|
470
|
-
id: member.id,
|
471
|
-
user: await thread.guild.members
|
472
|
-
.fetch(member.user)
|
473
|
-
.then((m) => {
|
474
|
-
var _a, _b;
|
475
|
-
return ({
|
476
|
-
id: m.id,
|
477
|
-
username: (_a = m.user) === null || _a === void 0 ? void 0 : _a.username,
|
478
|
-
globalName: (_b = m.user) === null || _b === void 0 ? void 0 : _b.globalName,
|
479
|
-
nickname: m.nickname,
|
480
|
-
});
|
481
|
-
})
|
482
|
-
.catch(() => null),
|
483
|
-
})));
|
484
|
-
}
|
485
329
|
break;
|
486
330
|
case discord_js_1.Events.ThreadMemberUpdate:
|
487
331
|
const oldMember = args[0]; // ThreadMember trước khi thay đổi
|
488
332
|
const newMember = args[1]; // ThreadMember sau khi thay đổi
|
489
|
-
console.log(`🚀 ~ threadMemberUpdate - Thread member updated in thread ${newMember.thread.id}`);
|
490
|
-
// Trích xuất thông tin thread
|
491
|
-
const thread = newMember.thread;
|
492
|
-
data.thread = {
|
493
|
-
id: thread.id,
|
494
|
-
name: thread.name,
|
495
|
-
channelId: thread.parentId,
|
496
|
-
guildId: thread.guildId,
|
497
|
-
memberCount: thread.memberCount,
|
498
|
-
};
|
499
333
|
// Trích xuất thông tin thành viên trước và sau khi thay đổi
|
500
334
|
data.oldMember = {
|
501
|
-
|
502
|
-
userId: oldMember.userId,
|
503
|
-
threadId: oldMember.threadId,
|
335
|
+
...oldMember,
|
504
336
|
};
|
505
337
|
data.newMember = {
|
506
|
-
|
507
|
-
userId: newMember.userId,
|
508
|
-
threadId: newMember.threadId,
|
338
|
+
...newMember,
|
509
339
|
};
|
510
|
-
// So sánh thay đổi (nếu có)
|
511
|
-
data.changes = {};
|
512
|
-
// Hiện tại ThreadMember không có nhiều thuộc tính có thể thay đổi, nhưng bạn có thể thêm logic so sánh nếu Discord cập nhật thêm tính năng
|
513
|
-
// Ví dụ: if (oldMember.someProperty !== newMember.someProperty) { ... }
|
514
|
-
// Fetch thông tin chi tiết của thành viên (nếu cần)
|
515
|
-
if (thread.guild) {
|
516
|
-
data.memberDetails = await thread.guild.members
|
517
|
-
.fetch(newMember.userId)
|
518
|
-
.then((member) => {
|
519
|
-
var _a, _b;
|
520
|
-
return ({
|
521
|
-
id: member.id,
|
522
|
-
username: (_a = member.user) === null || _a === void 0 ? void 0 : _a.username,
|
523
|
-
globalName: (_b = member.user) === null || _b === void 0 ? void 0 : _b.globalName,
|
524
|
-
nickname: member.nickname,
|
525
|
-
roles: member.roles.cache.map((role) => ({
|
526
|
-
id: role.id,
|
527
|
-
name: role.name,
|
528
|
-
})),
|
529
|
-
});
|
530
|
-
})
|
531
|
-
.catch((error) => {
|
532
|
-
console.error("Lỗi khi fetch member:", error);
|
533
|
-
return null;
|
534
|
-
});
|
535
|
-
}
|
536
340
|
break;
|
537
341
|
case discord_js_1.Events.ThreadUpdate:
|
538
342
|
const oldThread = args[0];
|
@@ -545,31 +349,20 @@ class DiscordEventHandler {
|
|
545
349
|
case discord_js_1.Events.GuildBanRemove:
|
546
350
|
const ban = args[0];
|
547
351
|
data.ban = { ...ban };
|
548
|
-
data.guild = { ...ban.guild };
|
549
|
-
data.user = await enrichMember(ban.user, ban.guild.id);
|
550
352
|
break;
|
551
353
|
case discord_js_1.Events.GuildAuditLogEntryCreate:
|
552
354
|
const auditLogEntry = args[0]; // GuildAuditLogsEntry
|
553
355
|
const guildAuditLogEntry = args[1]; // Guild
|
554
356
|
// Trích xuất thông tin từ audit log entry
|
555
357
|
data.auditLogEntry = {
|
556
|
-
|
557
|
-
guildId: guildAuditLogEntry.id,
|
558
|
-
action: auditLogEntry.action,
|
559
|
-
executorId: auditLogEntry.executorId,
|
560
|
-
targetId: auditLogEntry.targetId,
|
561
|
-
reason: auditLogEntry.reason || null,
|
562
|
-
createdTimestamp: auditLogEntry.createdTimestamp,
|
358
|
+
...auditLogEntry,
|
563
359
|
};
|
564
360
|
// Fetch thông tin chi tiết của người thực hiện hành động (executor)
|
565
361
|
if (auditLogEntry.executorId) {
|
566
362
|
try {
|
567
363
|
const executor = await guildAuditLogEntry.client.users.fetch(auditLogEntry.executorId);
|
568
364
|
data.executor = {
|
569
|
-
|
570
|
-
username: executor.username,
|
571
|
-
globalName: executor.globalName,
|
572
|
-
tag: executor.tag,
|
365
|
+
...executor,
|
573
366
|
};
|
574
367
|
}
|
575
368
|
catch (error) {
|
@@ -577,14 +370,13 @@ class DiscordEventHandler {
|
|
577
370
|
data.executor = null;
|
578
371
|
}
|
579
372
|
}
|
373
|
+
data.guildAuditLogEntry = { ...guildAuditLogEntry };
|
580
374
|
break;
|
581
375
|
// Emoji & Sticker events
|
582
376
|
case discord_js_1.Events.GuildEmojiCreate:
|
583
|
-
const emojiCreated = args[0]; // Emoji
|
584
|
-
data.emoji = { ...emojiCreated };
|
585
377
|
case discord_js_1.Events.GuildEmojiDelete:
|
586
|
-
const
|
587
|
-
data.emoji = { ...
|
378
|
+
const emoji = args[0]; // Emoji
|
379
|
+
data.emoji = { ...emoji };
|
588
380
|
break;
|
589
381
|
case discord_js_1.Events.GuildEmojiUpdate:
|
590
382
|
const oldEmoji = args[0]; // Emoji trước khi thay đổi
|
@@ -593,12 +385,9 @@ class DiscordEventHandler {
|
|
593
385
|
data.newEmoji = { ...newEmoji };
|
594
386
|
break;
|
595
387
|
case discord_js_1.Events.GuildStickerCreate:
|
596
|
-
const stickerCreated = args[0]; // Sticker
|
597
|
-
data.sticker = { ...stickerCreated };
|
598
|
-
break;
|
599
388
|
case discord_js_1.Events.GuildStickerDelete:
|
600
|
-
const
|
601
|
-
data.sticker = { ...
|
389
|
+
const sticker = args[0]; // Sticker
|
390
|
+
data.sticker = { ...sticker };
|
602
391
|
break;
|
603
392
|
case discord_js_1.Events.GuildStickerUpdate:
|
604
393
|
const oldSticker = args[0]; // Sticker trước khi thay đổi
|
@@ -610,8 +399,7 @@ class DiscordEventHandler {
|
|
610
399
|
case discord_js_1.Events.GuildIntegrationsUpdate:
|
611
400
|
const guildIntegrations = args[0]; // Guild
|
612
401
|
data.guild = {
|
613
|
-
|
614
|
-
name: guildIntegrations.name,
|
402
|
+
...guildIntegrations,
|
615
403
|
};
|
616
404
|
break;
|
617
405
|
case discord_js_1.Events.WebhooksUpdate:
|
@@ -619,21 +407,12 @@ class DiscordEventHandler {
|
|
619
407
|
data.webhooksChannel = {
|
620
408
|
...webhooksChannel,
|
621
409
|
};
|
622
|
-
data.guild = {
|
623
|
-
id: webhooksChannel.guildId,
|
624
|
-
name: webhooksChannel.guild.name,
|
625
|
-
};
|
626
410
|
break;
|
627
411
|
// Invite events
|
628
412
|
case discord_js_1.Events.InviteCreate:
|
413
|
+
case discord_js_1.Events.InviteDelete:
|
629
414
|
const inviteCreated = args[0]; // Invite
|
630
415
|
data.invite = { ...inviteCreated };
|
631
|
-
data.guild = { ...inviteCreated.guild };
|
632
|
-
break;
|
633
|
-
case discord_js_1.Events.InviteDelete:
|
634
|
-
const inviteDeleted = args[0]; // Invite
|
635
|
-
data.invite = { ...inviteDeleted };
|
636
|
-
data.guild = { ...inviteDeleted.guild };
|
637
416
|
break;
|
638
417
|
// Voice events
|
639
418
|
case discord_js_1.Events.VoiceChannelEffectSend:
|
@@ -650,17 +429,27 @@ class DiscordEventHandler {
|
|
650
429
|
case discord_js_1.Events.PresenceUpdate:
|
651
430
|
const oldPresence = args[0];
|
652
431
|
const newPresence = args[1];
|
653
|
-
|
654
|
-
|
432
|
+
data.oldPresence = oldPresence
|
433
|
+
? {
|
434
|
+
...oldPresence,
|
435
|
+
}
|
436
|
+
: null;
|
655
437
|
data.newPresence = { ...newPresence };
|
656
438
|
break;
|
657
439
|
// Scheduled event events
|
658
440
|
case discord_js_1.Events.GuildScheduledEventCreate:
|
659
441
|
case discord_js_1.Events.GuildScheduledEventDelete:
|
442
|
+
const guildScheduled = args[0]; // GuildScheduledEvent
|
443
|
+
data.guildScheduledEvent = { ...guildScheduled };
|
444
|
+
data.guild = { ...guildScheduled.guild };
|
445
|
+
break;
|
660
446
|
case discord_js_1.Events.GuildScheduledEventUpdate:
|
661
|
-
const
|
662
|
-
|
663
|
-
data.
|
447
|
+
const oldGuildScheduledEvent = args[0]; // GuildScheduledEvent trước khi thay đổi
|
448
|
+
const newGuildScheduledEvent = args[1]; // GuildScheduledEvent sau khi thay đổi
|
449
|
+
data.oldGuildScheduledEvent = oldGuildScheduledEvent
|
450
|
+
? { ...oldGuildScheduledEvent }
|
451
|
+
: null;
|
452
|
+
data.newGuildScheduledEvent = { ...newGuildScheduledEvent };
|
664
453
|
break;
|
665
454
|
case discord_js_1.Events.GuildScheduledEventUserAdd:
|
666
455
|
case discord_js_1.Events.GuildScheduledEventUserRemove:
|
@@ -668,21 +457,11 @@ class DiscordEventHandler {
|
|
668
457
|
const user = args[1];
|
669
458
|
data.user = { ...user };
|
670
459
|
data.guildScheduledEvent = { ...guildScheduledEvent };
|
671
|
-
data.guild = { ...guildScheduledEvent.guild };
|
672
460
|
break;
|
673
461
|
// Interaction events
|
674
462
|
case discord_js_1.Events.InteractionCreate:
|
675
463
|
const interaction = args[0];
|
676
464
|
data.interaction = { ...interaction };
|
677
|
-
if (interaction.guild) {
|
678
|
-
data.guild = {
|
679
|
-
id: interaction.guild.id,
|
680
|
-
name: interaction.guild.name,
|
681
|
-
};
|
682
|
-
}
|
683
|
-
if (interaction.user) {
|
684
|
-
data.user = await enrichMember(interaction.user, interaction.guildId || undefined);
|
685
|
-
}
|
686
465
|
break;
|
687
466
|
case discord_js_1.Events.ApplicationCommandPermissionsUpdate:
|
688
467
|
const dataApp = args[0]; // ApplicationCommandPermissionsUpdateData
|
@@ -721,17 +500,17 @@ class DiscordEventHandler {
|
|
721
500
|
const ShardReadyId = args[0];
|
722
501
|
const unavailableGuilds = args[1];
|
723
502
|
data.ShardReadyId = ShardReadyId;
|
724
|
-
data.unavailableGuilds = unavailableGuilds;
|
503
|
+
data.unavailableGuilds = { ...unavailableGuilds };
|
725
504
|
break;
|
726
505
|
case discord_js_1.Events.ShardReconnecting:
|
727
506
|
const ShardReconnectingId = args[0];
|
728
|
-
data.
|
507
|
+
data.id = ShardReconnectingId;
|
729
508
|
break;
|
730
509
|
case discord_js_1.Events.ShardResume:
|
731
510
|
const ShardResumeId = args[0];
|
732
511
|
const replayedEvents = args[1];
|
733
|
-
data.
|
734
|
-
data.
|
512
|
+
data.id = ShardResumeId;
|
513
|
+
data.replayedEvent = replayedEvents;
|
735
514
|
break;
|
736
515
|
// User event
|
737
516
|
case discord_js_1.Events.UserUpdate:
|
@@ -742,21 +521,16 @@ class DiscordEventHandler {
|
|
742
521
|
break;
|
743
522
|
// Member events
|
744
523
|
case discord_js_1.Events.GuildMemberAdd:
|
745
|
-
const memberAdded = args[0]; // GuildMember
|
746
|
-
data.member = { ...memberAdded };
|
747
|
-
break;
|
748
524
|
case discord_js_1.Events.GuildMemberAvailable:
|
749
|
-
const memberAvailable = args[0]; // GuildMember
|
750
|
-
data.member = { ...memberAvailable };
|
751
|
-
break;
|
752
525
|
case discord_js_1.Events.GuildMemberRemove:
|
753
|
-
const
|
754
|
-
data.member = { ...
|
526
|
+
const member = args[0]; // GuildMember
|
527
|
+
data.member = { ...member };
|
755
528
|
break;
|
756
529
|
case discord_js_1.Events.GuildMemberUpdate:
|
757
|
-
const
|
758
|
-
|
759
|
-
data.
|
530
|
+
const oldMemberUpdate = args[0]; // GuildMember trước khi thay đổi
|
531
|
+
const newMemberUpdate = args[1]; // GuildMember sau khi thay đổi
|
532
|
+
data.oldMemberUpdate = { ...oldMemberUpdate };
|
533
|
+
data.newMemberUpdate = { ...newMemberUpdate };
|
760
534
|
break;
|
761
535
|
case discord_js_1.Events.GuildMembersChunk:
|
762
536
|
const membersChunk = args[0];
|
@@ -770,18 +544,12 @@ class DiscordEventHandler {
|
|
770
544
|
case discord_js_1.Events.AutoModerationActionExecution:
|
771
545
|
const action = args[0];
|
772
546
|
data.action = { ...action };
|
773
|
-
if (action.guild) {
|
774
|
-
data.guild = { ...action.guild };
|
775
|
-
}
|
776
547
|
break;
|
777
548
|
case discord_js_1.Events.AutoModerationRuleCreate:
|
549
|
+
case discord_js_1.Events.AutoModerationRuleDelete:
|
778
550
|
const ruleCreated = args[0];
|
779
551
|
data.rule = { ...ruleCreated };
|
780
552
|
break;
|
781
|
-
case discord_js_1.Events.AutoModerationRuleDelete:
|
782
|
-
const ruleDeleted = args[0];
|
783
|
-
data.rule = { ...ruleDeleted };
|
784
|
-
break;
|
785
553
|
case discord_js_1.Events.AutoModerationRuleUpdate:
|
786
554
|
const oldRule = args[0]; // AutoModerationRule trước khi thay đổi
|
787
555
|
const newRule = args[1]; // AutoModerationRule sau khi thay đổi
|
@@ -790,17 +558,12 @@ class DiscordEventHandler {
|
|
790
558
|
break;
|
791
559
|
// Poll event
|
792
560
|
case discord_js_1.Events.MessagePollVoteAdd:
|
561
|
+
case discord_js_1.Events.MessagePollVoteRemove:
|
793
562
|
const pollVoteAdd = args[0]; // PollVote
|
794
563
|
const userId = args[1]; // User ID
|
795
564
|
data.pollVote = { ...pollVoteAdd };
|
796
565
|
data.userId = userId;
|
797
566
|
break;
|
798
|
-
case discord_js_1.Events.MessagePollVoteRemove:
|
799
|
-
const pollVoteRemove = args[0]; // PollVote
|
800
|
-
const userIdRemove = args[1]; // User ID
|
801
|
-
data.pollVote = { ...pollVoteRemove };
|
802
|
-
data.userId = userIdRemove;
|
803
|
-
break;
|
804
567
|
default:
|
805
568
|
data.eventData = args;
|
806
569
|
break;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DiscordEventHandler.js","sourceRoot":"","sources":["../../src/handlers/DiscordEventHandler.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"DiscordEventHandler.js","sourceRoot":"","sources":["../../src/handlers/DiscordEventHandler.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
|
2
|
+
export declare class DiscordAction implements INodeType {
|
3
|
+
description: INodeTypeDescription;
|
4
|
+
execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
|
5
|
+
}
|
@@ -0,0 +1,138 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.DiscordAction = void 0;
|
4
|
+
const discord_js_1 = require("discord.js");
|
5
|
+
const voice_1 = require("@discordjs/voice");
|
6
|
+
const client_1 = require("./client");
|
7
|
+
const DiscordIntentMapping_1 = require("../definitions/DiscordIntentMapping");
|
8
|
+
class DiscordAction {
|
9
|
+
constructor() {
|
10
|
+
this.description = {
|
11
|
+
displayName: 'Discord Action',
|
12
|
+
name: 'discordAction',
|
13
|
+
icon: 'file:../assets/icon/discord.svg',
|
14
|
+
group: ['output'],
|
15
|
+
version: 1,
|
16
|
+
description: 'Perform Discord voice channel operations',
|
17
|
+
defaults: {
|
18
|
+
name: 'Discord Action',
|
19
|
+
},
|
20
|
+
inputs: ['main'],
|
21
|
+
outputs: ['main'],
|
22
|
+
credentials: [
|
23
|
+
{
|
24
|
+
name: 'discordApi',
|
25
|
+
required: true,
|
26
|
+
},
|
27
|
+
],
|
28
|
+
properties: [
|
29
|
+
{
|
30
|
+
displayName: 'Operation',
|
31
|
+
name: 'operation',
|
32
|
+
type: 'options',
|
33
|
+
options: [
|
34
|
+
{
|
35
|
+
name: 'Join Voice Channel',
|
36
|
+
value: 'joinVoiceChannel',
|
37
|
+
description: 'Join a voice channel',
|
38
|
+
},
|
39
|
+
{
|
40
|
+
name: 'Leave Voice Channel',
|
41
|
+
value: 'leaveVoiceChannel',
|
42
|
+
description: 'Leave the current voice channel',
|
43
|
+
},
|
44
|
+
],
|
45
|
+
default: 'joinVoiceChannel',
|
46
|
+
required: true,
|
47
|
+
},
|
48
|
+
{
|
49
|
+
displayName: 'Guild ID',
|
50
|
+
name: 'guildId',
|
51
|
+
type: 'string',
|
52
|
+
default: '',
|
53
|
+
required: true,
|
54
|
+
description: 'The ID of the Discord server (guild)',
|
55
|
+
},
|
56
|
+
{
|
57
|
+
displayName: 'Channel ID',
|
58
|
+
name: 'channelId',
|
59
|
+
type: 'string',
|
60
|
+
default: '',
|
61
|
+
displayOptions: {
|
62
|
+
show: {
|
63
|
+
operation: ['joinVoiceChannel'],
|
64
|
+
},
|
65
|
+
},
|
66
|
+
required: true,
|
67
|
+
description: 'The ID of the voice channel to join',
|
68
|
+
},
|
69
|
+
],
|
70
|
+
};
|
71
|
+
}
|
72
|
+
async execute() {
|
73
|
+
const credentials = await this.getCredentials('discordApi');
|
74
|
+
const operation = this.getNodeParameter('operation', 0);
|
75
|
+
const guildId = this.getNodeParameter('guildId', 0);
|
76
|
+
// Initialize Discord client with voice intents
|
77
|
+
const clientOptions = (0, DiscordIntentMapping_1.getclientOptions)('voice');
|
78
|
+
const client = await (0, client_1.initializeDiscordClient)(credentials.botToken, clientOptions);
|
79
|
+
try {
|
80
|
+
const guild = await client.guilds.fetch(guildId);
|
81
|
+
if (!guild) {
|
82
|
+
throw new Error(`Could not find guild with ID ${guildId}`);
|
83
|
+
}
|
84
|
+
switch (operation) {
|
85
|
+
case 'joinVoiceChannel': {
|
86
|
+
const channelId = this.getNodeParameter('channelId', 0);
|
87
|
+
const channel = await guild.channels.fetch(channelId);
|
88
|
+
if (!channel || !(channel instanceof discord_js_1.VoiceChannel)) {
|
89
|
+
throw new Error(`Channel ${channelId} is not a voice channel`);
|
90
|
+
}
|
91
|
+
const connection = (0, voice_1.joinVoiceChannel)({
|
92
|
+
channelId: channel.id,
|
93
|
+
guildId: guild.id,
|
94
|
+
adapterCreator: guild.voiceAdapterCreator,
|
95
|
+
});
|
96
|
+
// Create an audio player to keep the connection alive
|
97
|
+
const player = (0, voice_1.createAudioPlayer)();
|
98
|
+
connection.subscribe(player);
|
99
|
+
// Wait for the connection to be ready
|
100
|
+
await new Promise((resolve, reject) => {
|
101
|
+
const timeout = setTimeout(() => {
|
102
|
+
reject(new Error('Voice connection timeout'));
|
103
|
+
}, 10000);
|
104
|
+
connection.on(voice_1.VoiceConnectionStatus.Ready, () => {
|
105
|
+
clearTimeout(timeout);
|
106
|
+
resolve(true);
|
107
|
+
});
|
108
|
+
connection.on(voice_1.VoiceConnectionStatus.Disconnected, () => {
|
109
|
+
clearTimeout(timeout);
|
110
|
+
reject(new Error('Failed to connect to voice channel'));
|
111
|
+
});
|
112
|
+
});
|
113
|
+
break;
|
114
|
+
}
|
115
|
+
case 'leaveVoiceChannel': {
|
116
|
+
const connection = (0, voice_1.getVoiceConnection)(guildId);
|
117
|
+
if (connection) {
|
118
|
+
connection.destroy();
|
119
|
+
}
|
120
|
+
break;
|
121
|
+
}
|
122
|
+
default:
|
123
|
+
throw new Error(`The operation "${operation}" is not supported!`);
|
124
|
+
}
|
125
|
+
// Clean up: Destroy the client after operation is complete
|
126
|
+
client.destroy();
|
127
|
+
// Return success
|
128
|
+
return [this.helpers.returnJsonArray({ success: true })];
|
129
|
+
}
|
130
|
+
catch (error) {
|
131
|
+
// Clean up on error
|
132
|
+
client.destroy();
|
133
|
+
throw error;
|
134
|
+
}
|
135
|
+
}
|
136
|
+
}
|
137
|
+
exports.DiscordAction = DiscordAction;
|
138
|
+
//# sourceMappingURL=DiscordAction.node.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DiscordAction.node.js","sourceRoot":"","sources":["../../src/nodes/DiscordAction.node.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "n8n-nodes-discord-dnd",
|
3
|
-
"version": "0.1.
|
3
|
+
"version": "0.1.73",
|
4
4
|
"description": "n8n node to create triggers for Discord events",
|
5
5
|
"keywords": [
|
6
6
|
"n8n",
|
@@ -33,7 +33,8 @@
|
|
33
33
|
"dist/credentials/DiscordApi.credentials.js"
|
34
34
|
],
|
35
35
|
"nodes": [
|
36
|
-
"dist/nodes/DiscordTrigger.node.js"
|
36
|
+
"dist/nodes/DiscordTrigger.node.js",
|
37
|
+
"dist/nodes/DiscordAction.node.js"
|
37
38
|
]
|
38
39
|
},
|
39
40
|
"devDependencies": {
|
@@ -48,7 +49,10 @@
|
|
48
49
|
"typescript": "~5.0.4"
|
49
50
|
},
|
50
51
|
"dependencies": {
|
52
|
+
"@discordjs/opus": "^0.10.0",
|
53
|
+
"@discordjs/voice": "^0.16.1",
|
51
54
|
"discord.js": "^14.9.0",
|
55
|
+
"libsodium-wrappers": "^0.7.15",
|
52
56
|
"n8n-core": "~1.5.0"
|
53
57
|
}
|
54
58
|
}
|