X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Flib%2Factivitypub%2Fprocess-announce.ts;h=f9674e09508b444a2d679dee8387ccc1f721f77f;hb=21e0727a84734cb0c81c1c9bb22a49b13e46fe5f;hp=d67958aec15907d7e585b5e8d487a4b58687717a;hpb=d846501818c2d29e66e6fd141789cb04fd55a437;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/lib/activitypub/process-announce.ts b/server/lib/activitypub/process-announce.ts index d67958aec..f9674e095 100644 --- a/server/lib/activitypub/process-announce.ts +++ b/server/lib/activitypub/process-announce.ts @@ -10,38 +10,33 @@ import { VideoChannelInstance } from '../../models/video/video-channel-interface import { VideoInstance } from '../../models/index' async function processAnnounceActivity (activity: ActivityAnnounce) { - const activityType = activity.object.type + const announcedActivity = activity.object const accountAnnouncer = await getOrCreateAccount(activity.actor) - if (activityType === 'VideoChannel') { - const activityCreate = Object.assign(activity, { - type: 'Create' as 'Create', - actor: activity.object.actor, - object: activity.object as VideoChannelObject - }) - + if (announcedActivity.type === 'Create' && announcedActivity.object.type === 'VideoChannel') { // Add share entry - const videoChannel: VideoChannelInstance = await processCreateActivity(activityCreate) + const videoChannel: VideoChannelInstance = await processCreateActivity(announcedActivity) await db.VideoChannelShare.create({ accountId: accountAnnouncer.id, videoChannelId: videoChannel.id }) - } else if (activityType === 'Video') { - const activityAdd = Object.assign(activity, { - type: 'Add' as 'Add', - actor: activity.object.actor, - object: activity.object as VideoTorrentObject - }) + return undefined + } else if (announcedActivity.type === 'Add' && announcedActivity.object.type === 'Video') { // Add share entry - const video: VideoInstance = await processAddActivity(activityAdd) + const video: VideoInstance = await processAddActivity(announcedActivity) await db.VideoShare.create({ accountId: accountAnnouncer.id, videoId: video.id }) + + return undefined } - logger.warn('Unknown activity object type %s when announcing activity.', activityType, { activity: activity.id }) + logger.warn( + 'Unknown activity object type %s -> %s when announcing activity.', announcedActivity.type, announcedActivity.object.type, + { activity: activity.id } + ) return Promise.resolve(undefined) }