summaryrefslogtreecommitdiff
path: root/src/remote/activitypub/kernel/announce/note.ts
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2021-11-12 02:02:25 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2021-11-12 02:02:25 +0900
commit0e4a111f81cceed275d9bec2695f6e401fb654d8 (patch)
tree40874799472fa07416f17b50a398ac33b7771905 /src/remote/activitypub/kernel/announce/note.ts
parentupdate deps (diff)
downloadmisskey-0e4a111f81cceed275d9bec2695f6e401fb654d8.tar.gz
misskey-0e4a111f81cceed275d9bec2695f6e401fb654d8.tar.bz2
misskey-0e4a111f81cceed275d9bec2695f6e401fb654d8.zip
refactoring
Resolve #7779
Diffstat (limited to 'src/remote/activitypub/kernel/announce/note.ts')
-rw-r--r--src/remote/activitypub/kernel/announce/note.ts67
1 files changed, 0 insertions, 67 deletions
diff --git a/src/remote/activitypub/kernel/announce/note.ts b/src/remote/activitypub/kernel/announce/note.ts
deleted file mode 100644
index 5230867f24..0000000000
--- a/src/remote/activitypub/kernel/announce/note.ts
+++ /dev/null
@@ -1,67 +0,0 @@
-import Resolver from '../../resolver';
-import post from '@/services/note/create';
-import { IRemoteUser } from '@/models/entities/user';
-import { IAnnounce, getApId } from '../../type';
-import { fetchNote, resolveNote } from '../../models/note';
-import { apLogger } from '../../logger';
-import { extractDbHost } from '@/misc/convert-host';
-import { fetchMeta } from '@/misc/fetch-meta';
-import { getApLock } from '@/misc/app-lock';
-import { parseAudience } from '../../audience';
-import { StatusError } from '@/misc/fetch';
-
-const logger = apLogger;
-
-/**
- * アナウンスアクティビティを捌きます
- */
-export default async function(resolver: Resolver, actor: IRemoteUser, activity: IAnnounce, targetUri: string): Promise<void> {
- const uri = getApId(activity);
-
- // アナウンサーが凍結されていたらスキップ
- if (actor.isSuspended) {
- return;
- }
-
- // アナウンス先をブロックしてたら中断
- const meta = await fetchMeta();
- if (meta.blockedHosts.includes(extractDbHost(uri))) return;
-
- const unlock = await getApLock(uri);
-
- try {
- // 既に同じURIを持つものが登録されていないかチェック
- const exist = await fetchNote(uri);
- if (exist) {
- return;
- }
-
- // Announce対象をresolve
- let renote;
- try {
- renote = await resolveNote(targetUri);
- } catch (e) {
- // 対象が4xxならスキップ
- if (e instanceof StatusError && e.isClientError) {
- logger.warn(`Ignored announce target ${targetUri} - ${e.statusCode}`);
- return;
- }
- logger.warn(`Error in announce target ${targetUri} - ${e.statusCode || e}`);
- throw e;
- }
-
- logger.info(`Creating the (Re)Note: ${uri}`);
-
- const activityAudience = await parseAudience(actor, activity.to, activity.cc);
-
- await post(actor, {
- createdAt: activity.published ? new Date(activity.published) : null,
- renote,
- visibility: activityAudience.visibility,
- visibleUsers: activityAudience.visibleUsers,
- uri
- });
- } finally {
- unlock();
- }
-}