aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md1
-rw-r--r--bot/src/events/ClientReady.js18
-rw-r--r--bot/src/events/ThreadCreate.js8
-rw-r--r--bot/src/events/ThreadListSync.js13
4 files changed, 40 insertions, 0 deletions
diff --git a/README.md b/README.md
index 56a67a9..e09a1e1 100644
--- a/README.md
+++ b/README.md
@@ -7,6 +7,7 @@ Created by Andrew Lee
</a><a href="https://discord.gg/EFhRDqG"><img src="https://img.shields.io/discord/243022206437687296.svg?colorB=7289DA&label=discord" alt="Discord Badge"> </a>
# What features does AleeBot have?
+- Moderation Logging
- Quotes
- LLM Chatbot
- other stuff soon:tm:
diff --git a/bot/src/events/ClientReady.js b/bot/src/events/ClientReady.js
index 9669287..b97af1f 100644
--- a/bot/src/events/ClientReady.js
+++ b/bot/src/events/ClientReady.js
@@ -32,6 +32,24 @@ export default {
await botActivity(client);
await QuoteOfTheDay(client);
+ await client.guilds.cache.forEach(guild => {
+ let threadCount = 0;
+
+ guild.channels.cache.forEach(channel => {
+ if (channel.threads) {
+ threadCount += channel.threads.cache.size;
+ channel.threads.cache.forEach(thread => {
+ if (!thread.members.cache.has(client.user.id)) {
+ thread.join()
+ .catch(error => console.error(`[X] Failed to join thread ${thread.name}:`, error));
+ }
+ });
+ }
+ });
+
+ console.log(`[>] Processed threads in guild: ${guild.name} | ${threadCount} Threads`);
+ });
+
if (process.env.NODE_ENV !== 'development') {
const readyEmbed = new EmbedBuilder()
.setAuthor({name: 'AleeBot Status', iconURL: client.user.avatarURL()})
diff --git a/bot/src/events/ThreadCreate.js b/bot/src/events/ThreadCreate.js
new file mode 100644
index 0000000..61cb217
--- /dev/null
+++ b/bot/src/events/ThreadCreate.js
@@ -0,0 +1,8 @@
+import { Events } from 'discord.js';
+
+export default {
+ name: Events.ThreadCreate,
+ async execute(thread) {
+ await thread.join(thread.id);
+ }
+};
diff --git a/bot/src/events/ThreadListSync.js b/bot/src/events/ThreadListSync.js
new file mode 100644
index 0000000..00657e6
--- /dev/null
+++ b/bot/src/events/ThreadListSync.js
@@ -0,0 +1,13 @@
+import { Events } from 'discord.js';
+
+export default {
+ name: Events.ThreadListSync,
+ async execute(threads) {
+ await threads.forEach(thread => {
+ if (!thread.members.cache.has(threads.client.user.id)) {
+ thread.join()
+ .catch(error => console.error(`[X] Failed to join thread ${thread.name}:`, error));
+ }
+ });
+ }
+};