// B O T O require('dotenv').config(); const tmi = require('tmi.js'); console.log(process.env.API_HOST); const client = new tmi.Client({ options: { debug: true }, connection: { secure: true, reconnect: true }, identity: { username: process.env.TTV_BOT_USERNAME, password: process.env.TTV_BOT_OAUTH }, channels: [ process.env.TTV_CHANNELS ] }); client.connect(); // SCAN MSG | START client.on('message', (channel, tags, message, self) => { if(self) return; 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 isSub = badges.subscriber || badges.founder; // Define Subs 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 if(isModUp) { // !MODS | START console.log('Captians Log: MOD used a command...'); // Log for ALL commands Mods use Mod/Sub/General } // !MODS | END if(isSub) { // !SUBS | START console.log('Captians Log: SUB used a command...'); // Log } // !SUBS | END if{ // !ALL | START console.log('LOG: Non-Mod command used!'); } // !ALL | END }); // SCAN MSG | END