| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- console.log('Iniciando 🚀🚀🚀')
- import { join, dirname } from 'path'
- import { createRequire } from 'module'
- import { fileURLToPath } from 'url'
- import { setupMaster, fork } from 'cluster'
- import { watchFile, unwatchFile } from 'fs'
- import cfonts from 'cfonts'
- import { createInterface } from 'readline'
- import yargs from 'yargs'
- const __dirname = dirname(fileURLToPath(import.meta.url))
- const require = createRequire(__dirname)
- const { name, author } = require(join(__dirname, './package.json'))
- const { say } = cfonts
- const rl = createInterface(process.stdin, process.stdout)
-
- say('KantuBot', {
- font: 'chrome',
- align: 'center',
- gradient: ['red', 'magenta']})
- say(`by: CrxsMods`, {
- font: 'console',
- align: 'center',
- gradient: ['red', 'magenta']});
- let isRunning = false
- /**
- * Start a js file
- * @param {String} file `path/to/file`
- */
- function start(file) {
- if (isRunning) return
- isRunning = true
- const args = [join(__dirname, file), ...process.argv.slice(2)]
- setupMaster({
- exec: args[0],
- args: args.slice(1)})
- const p = fork()
- p.on('message', (data) => {
- //console.log('╭--------- - - - ✓\n┆ ✅ TIEMPO DE ACTIVIDAD ACTUALIZADA\n╰-------------------- - - -', data)
- switch (data) {
- case 'reset':
- p.process.kill()
- isRunning = false
- start.apply(this, arguments)
- break
- case 'uptime':
- p.send(process.uptime())
- break
- }
- })
- p.on('exit', (_, code) => {
- isRunning = false;
- console.error('⚠️ Error Inesperado ⚠️', code)
- p.process.kill()
- isRunning = false
- start.apply(this, arguments)
- if (process.env.pm_id) {
- process.exit(1)
- } else {
- process.exit()
- }})
- const opts = new Object(yargs(process.argv.slice(2)).exitProcess(false).parse())
- if (!opts['test']) {
- if (!rl.listenerCount()) {
- rl.on('line', (line) => {
- p.emit('message', line.trim())
- })
- }}}
- setInterval(() => {
- console.log('♻️ Reiniciando bot automáticamente...');
- process.exit(0);
- }, 14400000) //4hs
- start('main.js');
|