Files
selfbot-discord/events/ready.ts
T
2024-03-06 22:33:44 +01:00

81 lines
2.8 KiB
TypeScript

const { Events, ActivityType } = require("discord.js");
const addBaseInDB = require("../fonctions/addBaseInDB");
const { Client, RichPresence, CustomStatus } = require('discord.js-selfbot-v13');
import sqlite3 from 'sqlite3';
require('dotenv').config();
const joinVC = require('../fonctions/joinVC');
module.exports = {
name: Events.ClientReady,
async execute(client: any) {
await addBaseInDB(client);
console.log(`le bot ${client.user.tag} est en ligne`)
const status = new RichPresence(client)
.setApplicationId('1000410111833018378')
.setType('STREAMING')
.setURL('https://www.twitch.tv/tuturp33')
.setState('Administrer sur SwiftBot')
.setName('SwiftBot')
.setDetails('SwiftBot')
.setStartTimestamp(Date.now())
.setAssetsLargeImage('1213862750451929138')
.setAssetsLargeText('Rejoins nous sur Discord')
.setAssetsSmallImage('1213863166874746910')
.setAssetsSmallText('TuturP33')
.addButton('Serveur Discord', 'https://discord.gg/zP7sHFpTZX')
.addButton('Bot Discord', 'https://discord.com/api/oauth2/authorize?client_id=1204577464903409674&permissions=8&scope=applications.commands%20bot');
const customs = [
new CustomStatus(client).setEmoji('<a:attention:1196960275266551889>').setState('Vend Bot, me mp !'),
new CustomStatus(client).setEmoji('<a:attention:1196960275266551889>').setState('Vend SelfBot, me mp !'),
new CustomStatus(client).setEmoji('<a:attention:1196960275266551889>').setState('Vend TOKEN, me mp !'),
new CustomStatus(client).setEmoji('<a:attention:1196960275266551889>').setState('Vend Herbergement me mp !'),
];
let index = 0;
setInterval(() => {
client.user.setPresence({ activities: [status, customs[index]] });
index = (index + 1) % customs.length;
}, 3000);
const dbName = process.env.DB_NAME || 'db.db';
let db = new sqlite3.Database(dbName, sqlite3.OPEN_READWRITE | sqlite3.OPEN_CREATE, (err: any) => {
if (err) {
console.error(err.message);
}
});
let voc = 'None';
db.all('SELECT * FROM config', (err: any, rows: any) => {
if (err) {
console.error(err.message);
}
rows.forEach((row: any) => {
if (row.name === 'autovoc') {
voc = row.value || 'None';
}
});
});
db.close((err) => {
if (err) {
console.error(err.message);
}
});
setInterval(() => {
if (voc !== 'None') {
const voiceChannel: any = client.channels.cache.get(voc);
if (!voiceChannel) return;
const guild = client.guilds.cache.get(voiceChannel.guildId);
if (!guild) return;
const member = guild.members.cache.get(client.user.id);
if (!member.voice.channel) {
joinVC(client, voc);
}
}
}, 5000);
}
};