/** * Proxy Queue Operations - Queueing proxy operations */ import { ProxyInfo } from '@stock-bot/http'; import { QueueManager } from '@stock-bot/queue'; import { OperationContext } from '@stock-bot/di'; export async function queueProxyFetch(): Promise { const ctx = OperationContext.create('proxy', 'queue-fetch'); const queueManager = QueueManager.getInstance(); const queue = queueManager.getQueue('proxy'); const job = await queue.add('proxy-fetch', { handler: 'proxy', operation: 'fetch-and-check', payload: {}, priority: 5, }); const jobId = job.id || 'unknown'; ctx.logger.info('Proxy fetch job queued', { jobId }); return jobId; } export async function queueProxyCheck(proxies: ProxyInfo[]): Promise { const ctx = OperationContext.create('proxy', 'queue-check'); const queueManager = QueueManager.getInstance(); const queue = queueManager.getQueue('proxy'); const job = await queue.add('proxy-check', { handler: 'proxy', operation: 'check-specific', payload: { proxies }, priority: 3, }); const jobId = job.id || 'unknown'; ctx.logger.info('Proxy check job queued', { jobId, count: proxies.length }); return jobId; }