From 9502586c8b8c925f5c664d002ac82a1b24e37275 Mon Sep 17 00:00:00 2001 From: mei23 Date: Fri, 24 Aug 2018 14:52:53 +0900 Subject: ActivityPub Renote/Replyで 対象Noteを添付しないようにする MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/services/note/create.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/services/note') diff --git a/src/services/note/create.ts b/src/services/note/create.ts index d8f0f57b63..268bfa5bbe 100644 --- a/src/services/note/create.ts +++ b/src/services/note/create.ts @@ -239,8 +239,8 @@ export default async (user: IUser, data: Option, silent = false) => new Promise< async function renderActivity(data: Option, note: INote) { const content = data.renote && data.text == null - ? renderAnnounce(data.renote.uri ? data.renote.uri : await renderNote(data.renote), note) - : renderCreate(await renderNote(note)); + ? renderAnnounce(data.renote.uri ? data.renote.uri : `${config.url}/notes/${data.renote._id}`, note) + : renderCreate(await renderNote(note, false)); return packAp(content); } -- cgit v1.2.3-freya From ffcb2f755c2d20e62272212905c7d2ca795e4c3d Mon Sep 17 00:00:00 2001 From: mei23 Date: Sat, 25 Aug 2018 14:12:44 +0900 Subject: Send actor in CreateNote, Announce --- src/remote/activitypub/renderer/announce.ts | 1 + src/remote/activitypub/renderer/create.ts | 16 ++++++++++++---- src/services/note/create.ts | 2 +- 3 files changed, 14 insertions(+), 5 deletions(-) (limited to 'src/services/note') diff --git a/src/remote/activitypub/renderer/announce.ts b/src/remote/activitypub/renderer/announce.ts index 6d5a67b5c3..f6276ade04 100644 --- a/src/remote/activitypub/renderer/announce.ts +++ b/src/remote/activitypub/renderer/announce.ts @@ -6,6 +6,7 @@ export default (object: any, note: INote) => { return { id: `${config.url}/notes/${note._id}`, + actor: `${config.url}/users/${note.userId}`, type: 'Announce', published: note.createdAt.toISOString(), to: ['https://www.w3.org/ns/activitystreams#Public'], diff --git a/src/remote/activitypub/renderer/create.ts b/src/remote/activitypub/renderer/create.ts index b8bf98a655..42b36195ff 100644 --- a/src/remote/activitypub/renderer/create.ts +++ b/src/remote/activitypub/renderer/create.ts @@ -1,4 +1,12 @@ -export default (object: any) => ({ - type: 'Create', - object -}); +import config from '../../../config'; +import { INote } from '../../../models/note'; + +export default (object: any, note: INote) => { + return { + id: `${config.url}/notes/${note._id}/activity`, + actor: `${config.url}/users/${note.userId}`, + type: 'Create', + published: note.createdAt.toISOString(), + object + }; +}; diff --git a/src/services/note/create.ts b/src/services/note/create.ts index 268bfa5bbe..63e3557828 100644 --- a/src/services/note/create.ts +++ b/src/services/note/create.ts @@ -240,7 +240,7 @@ export default async (user: IUser, data: Option, silent = false) => new Promise< async function renderActivity(data: Option, note: INote) { const content = data.renote && data.text == null ? renderAnnounce(data.renote.uri ? data.renote.uri : `${config.url}/notes/${data.renote._id}`, note) - : renderCreate(await renderNote(note, false)); + : renderCreate(await renderNote(note, false), note); return packAp(content); } -- cgit v1.2.3-freya From ac474f388439ec09cd4429e4ebba9b89365a2b79 Mon Sep 17 00:00:00 2001 From: mei23 Date: Sat, 25 Aug 2018 14:52:35 +0900 Subject: Send actor in Delete --- src/remote/activitypub/renderer/delete.ts | 6 +++++- src/services/note/delete.ts | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'src/services/note') diff --git a/src/remote/activitypub/renderer/delete.ts b/src/remote/activitypub/renderer/delete.ts index f468a22e24..2a4e70e25e 100644 --- a/src/remote/activitypub/renderer/delete.ts +++ b/src/remote/activitypub/renderer/delete.ts @@ -1,4 +1,8 @@ -export default (object: any) => ({ +import config from '../../../config'; +import { ILocalUser } from "../../../models/user"; + +export default (object: any, user: ILocalUser) => ({ type: 'Delete', + actor: `${config.url}/users/${user._id}`, object }); diff --git a/src/services/note/delete.ts b/src/services/note/delete.ts index d444b13a8b..d0e2b12b41 100644 --- a/src/services/note/delete.ts +++ b/src/services/note/delete.ts @@ -32,7 +32,7 @@ export default async function(user: IUser, note: INote) { //#region ローカルの投稿なら削除アクティビティを配送 if (isLocalUser(user)) { - const content = pack(renderDelete(await renderNote(note))); + const content = pack(renderDelete(await renderNote(note), user)); const followings = await Following.find({ followeeId: user._id, -- cgit v1.2.3-freya