Lurk_Bots/node/autoban.js

53 lines
1.7 KiB
JavaScript
Raw Normal View History

2022-02-14 05:59:45 +00:00
const tmi = require('tmi.js');
2022-02-18 05:18:23 +00:00
require('dotenv').config();
2022-02-14 05:59:45 +00:00
const colors = require('colors');
2022-02-23 07:01:00 +00:00
const lurk_bots = require("./db/lurk_bots");
2022-02-16 18:11:46 +00:00
2022-02-16 18:55:19 +00:00
console.log(`ANTI / Lurk Bots`.black.bgBrightRed);
console.log(`v 0.1 | BETA`.black.bgBrightRed);
2022-02-14 05:59:45 +00:00
2022-02-16 18:55:19 +00:00
console.log(`Loading... | Lurk Bot DB`.black.bgGreen);
2022-02-23 07:00:08 +00:00
const {banlist} = lurk_bots
2022-02-14 05:59:45 +00:00
2022-02-16 18:55:19 +00:00
console.log(`Loading... | Setting from .env file`.black.bgGreen);
2022-02-14 05:59:45 +00:00
const client = new tmi.Client({
options: { debug: true },
connection: {
secure: true,
reconnect: true
},
identity: {
2022-02-16 18:11:46 +00:00
username: process.env.TTV_STREAMER_USERNAME,
password: process.env.TTV_STREAMER_OAUTH
2022-02-14 05:59:45 +00:00
},
2022-02-16 18:11:46 +00:00
channels: [ process.env.TTV_STREAMER_CHANNEL ]
2022-02-14 05:59:45 +00:00
});
2022-02-23 07:06:00 +00:00
console.log(`Loading... | Chatbot`.black.bgGreen);
2022-02-14 05:59:45 +00:00
client.connect();
2022-02-16 18:55:19 +00:00
client.on('message', (channel, tags, message, self) => {
2022-02-23 07:29:52 +00:00
//if(botlist) return;
2022-02-16 18:55:19 +00:00
const badges = tags.badges || {}; // Scan Badges
const isBroadcaster = badges.broadcaster; // Define Streamer
const isMod = badges.moderator; // Define Mod
const isModUp = isBroadcaster || isMod; // Permission Merge = Mod+Streamer
const botUserState = client.userstate[channel]; // MOD Status Check
const amMod = botUserState !== undefined && botUserState.mod === true; // Define Mod Status
if(self || !message.startsWith('!')) return; // Command Parser
const args = message.slice(1).split(' ');
const command = args.shift().toLowerCase(); // !COMMAND => command
2022-02-23 06:46:25 +00:00
// Mods + Streamer
if(isModUp) {
2022-02-23 07:06:00 +00:00
if(command === 'test') {
client.say(channel, `test `);
}
2022-02-18 05:18:23 +00:00
if(command === 'banbots') {
2022-02-23 06:46:25 +00:00
client.say(channel, `/ban `+ botlist);
2022-02-18 05:18:23 +00:00
}
if(command === 'unbanbots') {
2022-02-23 06:46:25 +00:00
client.say(channel, `/ban `+ botlist);
2022-02-18 05:18:23 +00:00
}
2022-02-16 23:02:27 +00:00
}
});
2022-02-23 07:29:52 +00:00
//console.log(process.env.API_HOST);