diff options
| author | MohamedBassem <me@mbassem.com> | 2024-02-08 15:14:23 +0000 |
|---|---|---|
| committer | MohamedBassem <me@mbassem.com> | 2024-02-08 15:15:21 +0000 |
| commit | 80bb8a108f29331cdb2f2695f6801beee104dc89 (patch) | |
| tree | b1ae2a512963a9c916c4bfed71f7633f508de131 /packages/shared/queues.ts | |
| parent | 333429adbaaa592cc96b480a5228f0e3f1de4cc2 (diff) | |
| download | karakeep-80bb8a108f29331cdb2f2695f6801beee104dc89.tar.zst | |
[refactor] Move the different packages to the package subdir
Diffstat (limited to 'packages/shared/queues.ts')
| -rw-r--r-- | packages/shared/queues.ts | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/packages/shared/queues.ts b/packages/shared/queues.ts new file mode 100644 index 00000000..a607131d --- /dev/null +++ b/packages/shared/queues.ts @@ -0,0 +1,29 @@ +import { Queue } from "bullmq"; +import { z } from "zod"; + +export const queueConnectionDetails = { + host: process.env.REDIS_HOST || "localhost", + port: parseInt(process.env.REDIS_PORT || "6379"), +}; + +// Link Crawler +export const zCrawlLinkRequestSchema = z.object({ + linkId: z.string(), + url: z.string().url(), +}); +export type ZCrawlLinkRequest = z.infer<typeof zCrawlLinkRequestSchema>; + +export const LinkCrawlerQueue = new Queue<ZCrawlLinkRequest, void>( + "link_crawler_queue", + { connection: queueConnectionDetails }, +); + +// OpenAI Worker +export const zOpenAIRequestSchema = z.object({ + linkId: z.string(), +}); +export type ZOpenAIRequest = z.infer<typeof zOpenAIRequestSchema>; + +export const OpenAIQueue = new Queue<ZOpenAIRequest, void>("openai_queue", { + connection: queueConnectionDetails, +}); |
