X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Fjob-queue%2Fhandlers%2Factivitypub-http-unicast.ts;h=673583d2b05d6c58626f9dcc1c2c343ede81d680;hb=0882c8e6509b2a4ea48f6c48ecb2aa4aa371500a;hp=9b4188c50c7d6f59e9fa83089c6a52947269691e;hpb=94a5ff8a4a75d75bb9df542a39ce8769e7a7e6a4;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 9b4188c50..673583d2b 100644 --- a/server/lib/job-queue/handlers/activitypub-http-unicast.ts +++ b/server/lib/job-queue/handlers/activitypub-http-unicast.ts @@ -1,16 +1,11 @@ -import * as kue from 'kue' +import { Job } from 'bull' +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' +import { buildGlobalHeaders, buildSignedRequestOptions, computeBody } from './utils/activitypub-http-utils' -export type ActivitypubHttpUnicastPayload = { - uri: string - signatureActorId?: number - body: any -} - -async function processActivityPubHttpUnicast (job: kue.Job) { +async function processActivityPubHttpUnicast (job: Job) { logger.info('Processing ActivityPub unicast in job %d.', job.id) const payload = job.data as ActivitypubHttpUnicastPayload @@ -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.updateActorFollowsScoreAndRemoveBadOnes([ uri ], [], undefined) + await doRequest(uri, options) + ActorFollowHealthCache.Instance.updateActorFollowsHealth([ uri ], []) } catch (err) { - ActorFollowModel.updateActorFollowsScoreAndRemoveBadOnes([], [ uri ], undefined) + ActorFollowHealthCache.Instance.updateActorFollowsHealth([], [ uri ]) throw err }