X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Factivitypub%2Fsend%2Fsend-follow.ts;h=9219640ddaae85cb8733e5c5ff6d44d7a78b02ca;hb=4d7ce9218a3f695bf3d013cbdce1c5c6a5221927;hp=4e9865af48dd782a9ec9b808ec1c7a6daa348d6a;hpb=94a5ff8a4a75d75bb9df542a39ce8769e7a7e6a4;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/activitypub/send/send-follow.ts b/server/lib/activitypub/send/send-follow.ts index 4e9865af4..9219640dd 100644 --- a/server/lib/activitypub/send/send-follow.ts +++ b/server/lib/activitypub/send/send-follow.ts @@ -1,20 +1,24 @@ +import { Transaction } from 'sequelize' import { ActivityFollow } from '../../../../shared/models/activitypub' -import { ActorModel } from '../../../models/activitypub/actor' -import { ActorFollowModel } from '../../../models/activitypub/actor-follow' -import { getActorFollowActivityPubUrl } from '../url' -import { unicastTo } from './misc' +import { logger } from '../../../helpers/logger' +import { MActor, MActorFollowActors } from '../../../types/models' +import { unicastTo } from './utils' -function sendFollow (actorFollow: ActorFollowModel) { +function sendFollow (actorFollow: MActorFollowActors, t: Transaction) { const me = actorFollow.ActorFollower const following = actorFollow.ActorFollowing - const url = getActorFollowActivityPubUrl(actorFollow) - const data = followActivityData(url, me, following) + // Same server as ours + if (!following.serverId) return - return unicastTo(data, me, following.inboxUrl) + logger.info('Creating job to send follow request to %s.', following.url) + + const data = buildFollowActivity(actorFollow.url, me, following) + + t.afterCommit(() => unicastTo(data, me, following.inboxUrl)) } -function followActivityData (url: string, byActor: ActorModel, targetActor: ActorModel): ActivityFollow { +function buildFollowActivity (url: string, byActor: MActor, targetActor: MActor): ActivityFollow { return { type: 'Follow', id: url, @@ -27,5 +31,5 @@ function followActivityData (url: string, byActor: ActorModel, targetActor: Acto export { sendFollow, - followActivityData + buildFollowActivity }