auto voc & task

This commit is contained in:
Tutur33
2024-03-25 22:56:27 +01:00
parent 08de66c525
commit 8c63190c27
3 changed files with 41 additions and 47 deletions
-8
View File
@@ -36,14 +36,6 @@ module.exports = {
}); });
message.edit(`La tache ${name} a été ajoutée.\nElle se lancera toutes les ${time} minutes.\nLe code est : \n\`\`\`js\n${code}\`\`\``); message.edit(`La tache ${name} a été ajoutée.\nElle se lancera toutes les ${time} minutes.\nLe code est : \n\`\`\`js\n${code}\`\`\``);
setInterval(() => {
try {
eval(code)(client);
} catch (e) {
console.log(`Erreur dans la tâche ${name} : ${e}`);
}
}, time * 60000);
}); });
}); });
}); });
+31 -38
View File
@@ -82,67 +82,60 @@ module.exports = {
}); });
const tasks:any = []; setInterval(() => {
db.all('SELECT * FROM task', (err: any, rows: any) => { let tasks: any = [];
db.all('SELECT * FROM task', (err: any, rows: any) => {
if (err) { if (err) {
console.error(err.message); console.error(err.message);
} }
rows.forEach((row: any) => { rows.forEach((row: any) => {
tasks.push(row); tasks.push(row);
}); });
tasks.forEach((task: any) => { tasks.forEach((task: any) => {
console.log(new Date().getTime() - (task.dernier_lancement + task.time * 60000)); if (task.dernier_lancement + task.time * 60000 < new Date().getTime()) {
console.log(task.dernier_lancement + task.time * 60000 < new Date().getTime());
if (task.dernier_lancement + task.time * 60000 === new Date().getTime()) { //-----------------------------------------------------------------------------
try { try {
eval(task.code) eval(task.code)
console.log(`La tâche ${task.name} a été exécutée avec succès.`);
const lastExecution = new Date().getTime(); const lastExecution = new Date().getTime();
db.run(`UPDATE task SET dernier_lancement = ? WHERE id = ?`, [lastExecution, task.id], (err: any) => { db.run(`UPDATE task SET dernier_lancement = ? WHERE id = ?`, [lastExecution, task.id], (err: any) => {
if (err) { if (err) {
console.error(err.message); console.error(err.message);
} }
}); });
} catch (e) { } catch (e) {
console.log(`Erreur dans la tâche ${task.name} : ${e}`); console.log(`Erreur dans la tâche ${task.name} : ${e}`);
} }
} }
setInterval(() => {
try {
eval(task.code)
const lastExecution = new Date().getTime();
db.run(`UPDATE task SET dernier_lancement = ? WHERE id = ?`, [lastExecution, task.id], (err: any) => {
if (err) {
console.error(err.message);
}
});
} catch (e) {
console.log(`Erreur dans la tâche ${task.name} : ${e}`);
}
}, task.time * 60000);
}); });
}); });
}, 15000);
setInterval(() => { setInterval(() => {
db.get('SELECT value FROM config WHERE name = "autovoc"', (err: any, row: any) => { let vocals: any = [];
db.all('SELECT * FROM autovoc', (err: any, rows: any) => {
if (err) { if (err) {
console.error(err.message); console.error(err.message);
} }
voc = row ? row.value : 'None'; rows.forEach((row: any) => {
vocals.push(row);
});
vocals.forEach((voc: any) => {
const voiceChannel: any = client.channels.cache.get(voc.vocalID);
if (!voiceChannel) return;
const guild = client.guilds.cache.get(voiceChannel.guildId);
if (!guild) return;
const member = guild.members.cache.get(client.user.id);
const memberVoiceChannel = member.voice.channel;
if (memberVoiceChannel) return;
const clientVoc = new Client({ checkUpdate: false });
clientVoc.on('ready', async () => {
console.log('autovoc :', voc.vocalID);
joinVC(clientVoc, voc.vocalID);
});
clientVoc.login(process.env.TOKENS);
});
}); });
}, 60000);
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);
process.on('unhandledRejection', (reason, p) => { process.on('unhandledRejection', (reason, p) => {
+10 -1
View File
@@ -16,7 +16,7 @@ module.exports = function initDB() {
name TEXT NOT NULL DEFAULT 'Task', name TEXT NOT NULL DEFAULT 'Task',
code TEXT NOT NULL, code TEXT NOT NULL,
time NUMBER NOT NULL, time NUMBER NOT NULL,
dernier_lancement TEXT NOT NULL DEFAULT '0' dernier_lancement NUMBER NOT NULL DEFAULT 0
)`, (err: Error) => { )`, (err: Error) => {
if (err) { if (err) {
console.error(err.message); console.error(err.message);
@@ -32,4 +32,13 @@ module.exports = function initDB() {
console.error(err.message); console.error(err.message);
} }
}); });
db.run(`CREATE TABLE IF NOT EXISTS autovoc(
id INTEGER PRIMARY KEY AUTOINCREMENT,
vocalID TEXT NOT NULL
)`, (err: Error) => {
if (err) {
console.error(err.message);
}
});
} }