X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Fjob-queue%2Fhandlers%2Factivitypub-http-unicast.ts;h=9e4e84002528abd90471f88afc347d90aa71610f;hb=405c83f9af377a663a4c8e9ad025fd5c10496922;hp=e1e1824e50dc25578a3cad95297d6c84a9a9f88f;hpb=2e3a0215d051dca1f7c8ef423564c8d37a255f77;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/job-queue/handlers/activitypub-http-unicast.ts b/server/lib/job-queue/handlers/activitypub-http-unicast.ts index e1e1824e5..9e4e84002 100644 --- a/server/lib/job-queue/handlers/activitypub-http-unicast.ts +++ b/server/lib/job-queue/handlers/activitypub-http-unicast.ts @@ -1,17 +1,12 @@ -import * as kue from 'kue' +import { Job } from 'bullmq' +import { buildGlobalHeaders, buildSignedRequestOptions, computeBody } from '@server/lib/activitypub/send' +import { ActivitypubHttpUnicastPayload } from '@shared/models' import { logger } from '../../../helpers/logger' import { doRequest } from '../../../helpers/requests' -import { ActorFollowModel } from '../../../models/activitypub/actor-follow' -import { buildSignedRequestOptions, computeBody } from './utils/activitypub-http-utils' +import { ActorFollowHealthCache } from '../../actor-follow-health-cache' -export type ActivitypubHttpUnicastPayload = { - uri: string - signatureActorId?: number - body: any -} - -async function processActivityPubHttpUnicast (job: kue.Job) { - logger.info('Processing ActivityPub unicast in job %d.', job.id) +async function processActivityPubHttpUnicast (job: Job) { + logger.info('Processing ActivityPub unicast in job %s.', job.id) const payload = job.data as ActivitypubHttpUnicastPayload const uri = payload.uri @@ -20,17 +15,17 @@ async function processActivityPubHttpUnicast (job: kue.Job) { const httpSignatureOptions = await buildSignedRequestOptions(payload) const options = { - method: 'POST', - uri, + method: 'POST' as 'POST', json: body, - httpSignature: httpSignatureOptions + httpSignature: httpSignatureOptions, + headers: buildGlobalHeaders(body) } try { - await doRequest(options) - ActorFollowModel.updateActorFollowsScore([ uri ], [], undefined) + await doRequest(uri, options) + ActorFollowHealthCache.Instance.updateActorFollowsHealth([ uri ], []) } catch (err) { - ActorFollowModel.updateActorFollowsScore([], [ uri ], undefined) + ActorFollowHealthCache.Instance.updateActorFollowsHealth([], [ uri ]) throw err }