implement justReadFeed API

This commit is contained in:
Hongbo Wu
2024-05-23 22:07:19 +08:00
parent b058952c2d
commit cb4fc23507
12 changed files with 163 additions and 38 deletions

View File

@ -53,6 +53,10 @@ import {
UPDATE_HIGHLIGHT_JOB,
UPDATE_LABELS_JOB,
} from '../jobs/update_db'
import {
UpdateJustReadFeedJobData,
UPDATE_JUST_READ_FEED_JOB,
} from '../jobs/update_just_read_feed'
import {
UploadContentJobData,
UPLOAD_CONTENT_JOB,
@ -85,6 +89,7 @@ export const getJobPriority = (jobName: string): number => {
case UPDATE_HIGHLIGHT_JOB:
case SYNC_READ_POSITIONS_JOB_NAME:
case SEND_EMAIL_JOB:
case UPDATE_JUST_READ_FEED_JOB:
return 1
case TRIGGER_RULE_JOB_NAME:
case CALL_WEBHOOK_JOB_NAME:
@ -981,4 +986,21 @@ export const enqueueBulkUploadContentJob = async (
return queue.addBulk(jobs)
}
export const enqueueUpdateJustReadFeed = async (
data: UpdateJustReadFeedJobData
) => {
const queue = await getBackendQueue()
if (!queue) {
return undefined
}
return queue.add(UPDATE_JUST_READ_FEED_JOB, data, {
jobId: `${UPDATE_JUST_READ_FEED_JOB}_${data.userId}_${JOB_VERSION}`,
removeOnComplete: true,
removeOnFail: true,
priority: getJobPriority(UPDATE_JUST_READ_FEED_JOB),
attempts: 3,
})
}
export default createHttpTaskWithToken