mirror of
https://github.com/nx-bat/discordbot-ng.git
synced 2026-09-22 02:19:09 -04:00
(tasks): Implement error handling and task IDs.
This commit is contained in:
+8
-3
@@ -139,9 +139,14 @@ client.on('clientReady', async () => {
|
||||
|
||||
await initializeWebserver(client);
|
||||
|
||||
tasks.forEach(async (task) => {
|
||||
if (task.firstRun) await task.handle(client);
|
||||
setInterval(async () => await task.handle(client).catch((error) => console.log(error)), task.interval);
|
||||
tasks.forEach((task) => {
|
||||
const handler = () => {
|
||||
Promise.resolve(task.handle(client))
|
||||
.catch(e => console.error(`Error in '${task.id}' task:`, e));
|
||||
};
|
||||
|
||||
if (task.firstRun) handler();
|
||||
setInterval(handler, task.interval);
|
||||
});
|
||||
|
||||
events.forEach(event =>
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import { Client } from 'discord.js';
|
||||
import { checkExpiredBans } from '../utils';
|
||||
import { Task } from '../types';
|
||||
import { checkExpiredBans } from '../utils';
|
||||
|
||||
const task: Task = {
|
||||
id: 'checkExpiredBans',
|
||||
interval: 300000,
|
||||
firstRun: true,
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import { Client } from 'discord.js';
|
||||
import { closeOldTickets } from '../utils';
|
||||
import { Task } from '../types';
|
||||
import { closeOldTickets } from '../utils';
|
||||
|
||||
const task: Task = {
|
||||
id: 'closeStaleTickets',
|
||||
interval: 3.6e6,
|
||||
firstRun: true,
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ import { Database } from '../shared/Database';
|
||||
import { Task } from '../types';
|
||||
|
||||
const task: Task = {
|
||||
id: 'pruneOldMessages',
|
||||
interval: 3.6e6,
|
||||
firstRun: true,
|
||||
|
||||
|
||||
Vendored
+1
@@ -1,6 +1,7 @@
|
||||
import { Client } from "discord.js";
|
||||
|
||||
export interface Task {
|
||||
id: string;
|
||||
interval: number;
|
||||
firstRun: boolean;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user