-import { getOrCreateVideoAndAccountAndChannel } from '../videos'
-import { forwardVideoRelatedActivity } from '../send/utils'
-import { Redis } from '../../redis'
-import { ActivityCreate, ActivityView, ViewObject } from '../../../../shared/models/activitypub'
-import { APProcessorOptions } from '../../../typings/activitypub-processor.model'
-import { MActorSignature } from '../../../typings/models'
-
-async function processViewActivity (options: APProcessorOptions<ActivityCreate | ActivityView>) {
+import { VideoViewsManager } from '@server/lib/views/video-views-manager'
+import { ActivityView } from '../../../../shared/models/activitypub'
+import { APProcessorOptions } from '../../../types/activitypub-processor.model'
+import { MActorSignature } from '../../../types/models'
+import { forwardVideoRelatedActivity } from '../send/shared/send-utils'
+import { getOrCreateAPVideo } from '../videos'
+
+async function processViewActivity (options: APProcessorOptions<ActivityView>) {