From 5e2bf6f2687818d93bf0b26364f3f1806fb1f55c Mon Sep 17 00:00:00 2001 From: Lucid Kobold <72232219+LucidKobold@users.noreply.github.com> Date: Fri, 28 Feb 2025 18:49:50 -0500 Subject: [PATCH] added meta to the blacklist feature as its own file and function --- src/bot/features/metaBlacklist.ts | 46 +++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/bot/features/metaBlacklist.ts diff --git a/src/bot/features/metaBlacklist.ts b/src/bot/features/metaBlacklist.ts new file mode 100644 index 0000000..e3c4718 --- /dev/null +++ b/src/bot/features/metaBlacklist.ts @@ -0,0 +1,46 @@ +import { Composer } from "grammy"; +import type { Context } from "#root/bot/context.js"; +import { logHandle } from "#root/bot/helpers/logging.js"; + +const composer = new Composer(); + +const feature = composer.chatType(["group", "supergroup"]); + +feature.hears( + /(facebook.com|meta.com|instagram.com|threads.net|whatsapp.com)/g, + logHandle("blacklist-detection-meta"), + async (ctx: Context) => { + const GROUP_IDS = process.env.GROUP_IDS + ? process.env.GROUP_IDS.split(",") + : undefined; + + if (ctx.chat && ctx.msg) { + if (GROUP_IDS !== undefined) { + const groupID = ctx.chat.id; + const flag = GROUP_IDS.includes(`${groupID}`); + const username = ctx.msg.from?.username; + + if (flag) { + ctx.msg.delete(); + await ctx.reply( + `@${username} Facebook and meta links along with with links to meta\\-owned services are not allowed here\\. Please consider sharing the media directly or from other social media sources or websites\\. No administration action was taken against you other than the message being deleted\\.`, + { parse_mode: "MarkdownV2" } + ); + } + } + + if (!GROUP_IDS) { + console.info("Group IDS:", process.env.GROUP_IDS); + await ctx.reply( + `There was a problem retrieving the whitelist\\. Check the env variables and try again\\.`, + { + parse_mode: "MarkdownV2", + reply_parameters: { message_id: ctx.msg.message_id } + } + ); + } + } + } +); + +export { composer as metaBlacklist };