mosh-helpdesk/server/src/lib/queue.ts

25 lines
594 B
TypeScript
Raw Normal View History

2026-02-26 20:30:42 +01:00
import { PgBoss } from "pg-boss";
import { registerClassifyWorker } from "./classify-ticket";
import { registerAutoResolveWorker } from "./auto-resolve-ticket";
2026-02-26 20:30:42 +01:00
const boss = new PgBoss({
connectionString: process.env.DATABASE_URL!,
});
boss.on("error", console.error);
export { boss };
2026-02-26 20:30:42 +01:00
export async function startQueue(): Promise<void> {
await boss.start();
await registerClassifyWorker(boss);
await registerAutoResolveWorker(boss);
2026-02-26 20:30:42 +01:00
console.log("Job queue started");
}
export async function stopQueue(): Promise<void> {
await boss.stop({ graceful: true, timeout: 30000 });
}