Bot Discord all-in-one yang menggabungkan 2 fitur utama: deteksi link media sosial dan anti-spam. Dibuat dengan TypeScript.
- Mendeteksi link dari YouTube, TikTok, dan Facebook
- Otomatis hapus pesan yang mengandung link medsos
- Mengirim embed laporan ke channel tujuan (berisi info pengirim, channel asal, dan link)
- Keyword spam: mendeteksi kata-kata spam (free nitro, airdrop, giveaway, dll)
- Link spam: mendeteksi link yang tidak ada di whitelist
- Steam gift scam: mendeteksi link Steam gift palsu
- Mention spam: mendeteksi @everyone dan @here
Domain berikut diizinkan dan tidak dianggap spam:
youtube.comfacebook.comtiktok.comab-codeworks.vercel.app
Catatan: Meskipun domain di atas ada di whitelist (anti-spam), link medsos (YouTube, TikTok, Facebook) tetap akan terdeteksi oleh fitur Deteksi Link Media Sosial dan dilaporkan ke channel tujuan.
- Node.js v18 atau lebih baru
- Discord Bot Token dari Discord Developer Portal
- Bot harus memiliki intent:
Guilds,GuildMessages,MessageContent - Bot harus memiliki permission:
Manage Messages,Send Messages,View Channels
npm installEdit file .env dan isi dengan token bot serta channel ID tujuan:
BOT_TOKEN=token_bot_kamu_disini
TARGET_CHANNEL_ID=id_channel_laporan_disiniMode development (pakai ts-node, langsung jalan tanpa compile):
npm run devMode production (compile dulu, lalu jalan):
npm run build
npm startdiscord-moderator-bot/
├── src/
│ ├── index.ts # Entry point utama bot
│ ├── config.ts # Konfigurasi (keyword, pattern, whitelist)
│ ├── detection.ts # Modul deteksi pelanggaran
│ └── handlers.ts # Modul aksi (hapus pesan, kirim laporan)
├── .env # Environment variables (token, channel ID)
├── .gitignore
├── package.json
├── tsconfig.json
└── README.md
Semua konfigurasi ada di src/config.ts:
- Tambah/hapus keyword spam → edit array
SPAM_KEYWORDS - Tambah/hapus whitelist → edit array
WHITELIST_LINKS - Tambah platform medsos → tambahkan entry baru di
SOCIAL_MEDIA_PATTERNS