55 lines
1.6 KiB
TypeScript
55 lines
1.6 KiB
TypeScript
// generalWorker
|
|
|
|
import { Worker } from 'bullmq';
|
|
import { connection } from '../../.config/bullmq.config.ts';
|
|
import { presignAllMuxAssets, presignMuxAsset } from '../processors/presignMuxAssets.ts';
|
|
import { copyV1VideoAll } from '../processors/copyV1VideoAll.ts';
|
|
import { copyV2ThumbToV3 } from '../processors/copyV2ThumbToV3.ts';
|
|
import { copyV1VideoToV3 } from '../processors/copyV1VideoToV3.ts';
|
|
import { createTorrent } from '../processors/createTorrent.ts';
|
|
import { analyzeAudio } from '../processors/analyzeAudio.ts';
|
|
import { findWork } from '../processors/findWork.ts';
|
|
import { getAnnounceUrlDetails } from '../processors/getAnnounceUrlDetails.ts';
|
|
|
|
new Worker(
|
|
'generalQueue',
|
|
async (job) => {
|
|
console.log('generalWorker. we got a job on the generalQueue.', job.data, job.name);
|
|
switch (job.name) {
|
|
case 'getAnnounceUrlDetails':
|
|
return await getAnnounceUrlDetails(job);
|
|
|
|
case 'findWork':
|
|
return await findWork(job);
|
|
|
|
case 'copyV1VideoAll':
|
|
return await copyV1VideoAll(job);
|
|
|
|
case 'copyV1VideoToV3':
|
|
return await copyV1VideoToV3(job);
|
|
|
|
case 'presignAllMuxAssets':
|
|
return await presignAllMuxAssets(job);
|
|
|
|
case 'presignMuxAsset':
|
|
return await presignMuxAsset(job);
|
|
|
|
case 'copyV2ThumbToV3':
|
|
return await copyV2ThumbToV3(job);
|
|
|
|
case 'createTorrent':
|
|
return await createTorrent(job);
|
|
|
|
case 'analyzeAudio':
|
|
return await analyzeAudio(job);
|
|
|
|
default:
|
|
throw new Error(`Unknown job name: ${job.name}`);
|
|
}
|
|
},
|
|
{ connection }
|
|
);
|
|
|
|
console.log('generalWorker is running...');
|
|
|