X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Fschedulers%2Fauto-follow-index-instances.ts;h=aaa5feed5fd45292b7793ed70039b20192d54fa4;hb=e83d06a7025a6b85bb8e648b1a5361b18ea83ed3;hp=d700a99f0b82257d630c3a1db7232f8aea7fb9ef;hpb=7cd1b12c19d0589d1d692ed0571ca0800f028aea;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/schedulers/auto-follow-index-instances.ts b/server/lib/schedulers/auto-follow-index-instances.ts index d700a99f0..aaa5feed5 100644 --- a/server/lib/schedulers/auto-follow-index-instances.ts +++ b/server/lib/schedulers/auto-follow-index-instances.ts @@ -1,12 +1,12 @@ -import { logger } from '../../helpers/logger' -import { AbstractScheduler } from './abstract-scheduler' -import { INSTANCES_INDEX, SCHEDULER_INTERVALS_MS, SERVER_ACTOR_NAME } from '../../initializers/constants' -import { CONFIG } from '../../initializers/config' import { chunk } from 'lodash' -import { doRequest } from '@server/helpers/requests' -import { ActorFollowModel } from '@server/models/activitypub/actor-follow' +import { doJSONRequest } from '@server/helpers/requests' import { JobQueue } from '@server/lib/job-queue' -import { getServerActor } from '@server/helpers/utils' +import { ActorFollowModel } from '@server/models/actor/actor-follow' +import { getServerActor } from '@server/models/application/application' +import { logger } from '../../helpers/logger' +import { CONFIG } from '../../initializers/config' +import { SCHEDULER_INTERVALS_MS, SERVER_ACTOR_NAME } from '../../initializers/constants' +import { AbstractScheduler } from './abstract-scheduler' export class AutoFollowIndexInstances extends AbstractScheduler { @@ -34,14 +34,16 @@ export class AutoFollowIndexInstances extends AbstractScheduler { try { const serverActor = await getServerActor() - const uri = indexUrl + INSTANCES_INDEX.HOSTS_PATH - - const qs = { count: 1000 } - if (this.lastCheck) Object.assign(qs, { since: this.lastCheck.toISOString() }) + const searchParams = { count: 1000 } + if (this.lastCheck) Object.assign(searchParams, { since: this.lastCheck.toISOString() }) this.lastCheck = new Date() - const { body } = await doRequest({ uri, qs, json: true }) + const { body } = await doJSONRequest(indexUrl, { searchParams }) + if (!body.data || Array.isArray(body.data) === false) { + logger.error('Cannot auto follow instances of index %s. Please check the auto follow URL.', indexUrl, { body }) + return + } const hosts: string[] = body.data.map(o => o.host) const chunks = chunk(hosts, 20)