Refactor bot. (#8)

This commit is contained in:
dada513 2022-06-07 11:08:49 +02:00 committed by GitHub
parent e0374bea36
commit 259d540e6f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 491 additions and 300 deletions

34
src/filters.ts Normal file
View file

@ -0,0 +1,34 @@
import * as BuildConfig from './constants';
import { Message } from 'discord.js';
import { isBad } from './badLinks';
import urlRegex from 'url-regex';
// true if message is ok, false if filtered
export async function filterMessage(e: Message): Promise<boolean> {
// url matcher
const urlMatches = [...e.content.matchAll(urlRegex())];
if (urlMatches.length) {
console.log('Found links in message from', e.author.tag);
for (const match of urlMatches) {
console.log('[link]', match[0]);
if (await isBad(match[0])) {
await e.reply({
embeds: [
{
title: 'Hold on!',
description:
'There seems to be a phishing / malware link in your message.',
color: 'RED',
},
],
});
return false;
}
}
}
return true;
}