diff options
| author | MeiMei <30769358+mei23@users.noreply.github.com> | 2019-09-08 11:30:44 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2019-09-08 11:30:44 +0900 |
| commit | c033464b924a91c8e80bd8a315153037450dcf96 (patch) | |
| tree | 8e173a83648ec853585e87cce4eba20315deb0a1 /src/remote/activitypub/kernel | |
| parent | Update README.md [AUTOGEN] (#5402) (diff) | |
| download | sharkey-c033464b924a91c8e80bd8a315153037450dcf96.tar.gz sharkey-c033464b924a91c8e80bd8a315153037450dcf96.tar.bz2 sharkey-c033464b924a91c8e80bd8a315153037450dcf96.zip | |
AP Undo Announce (#5400)
* AP Undo Announce
* Use activity id
Diffstat (limited to 'src/remote/activitypub/kernel')
| -rw-r--r-- | src/remote/activitypub/kernel/undo/announce.ts | 16 | ||||
| -rw-r--r-- | src/remote/activitypub/kernel/undo/index.ts | 6 |
2 files changed, 21 insertions, 1 deletions
diff --git a/src/remote/activitypub/kernel/undo/announce.ts b/src/remote/activitypub/kernel/undo/announce.ts new file mode 100644 index 0000000000..38ce5b6c59 --- /dev/null +++ b/src/remote/activitypub/kernel/undo/announce.ts @@ -0,0 +1,16 @@ +import { Notes } from '../../../../models'; +import { IRemoteUser } from '../../../../models/entities/user'; +import { IAnnounce, getApId } from '../../type'; +import deleteNote from '../../../../services/note/delete'; + +export const undoAnnounce = async (actor: IRemoteUser, activity: IAnnounce): Promise<void> => { + const uri = getApId(activity); + + const note = await Notes.findOne({ + uri + }); + + if (!note) return; + + await deleteNote(actor, note); +}; diff --git a/src/remote/activitypub/kernel/undo/index.ts b/src/remote/activitypub/kernel/undo/index.ts index 5f2e58c3bf..f49f66cc69 100644 --- a/src/remote/activitypub/kernel/undo/index.ts +++ b/src/remote/activitypub/kernel/undo/index.ts @@ -1,8 +1,9 @@ import { IRemoteUser } from '../../../../models/entities/user'; -import { IUndo, IFollow, IBlock, ILike } from '../../type'; +import { IUndo, IFollow, IBlock, ILike, IAnnounce } from '../../type'; import unfollow from './follow'; import unblock from './block'; import undoLike from './like'; +import { undoAnnounce } from './announce'; import Resolver from '../../resolver'; import { apLogger } from '../../logger'; @@ -38,5 +39,8 @@ export default async (actor: IRemoteUser, activity: IUndo): Promise<void> => { case 'Like': undoLike(actor, object as ILike); break; + case 'Announce': + undoAnnounce(actor, object as IAnnounce); + break; } }; |