diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-04-26 20:30:49 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-04-26 20:30:49 +0900 |
| commit | 32da569ef6ac93b1e187d9461b04c6d8a31ba0ba (patch) | |
| tree | 85f897fcd1ba905b31640a1c25f14e3b1f9083c5 /src/server/api/endpoints | |
| parent | :v: (diff) | |
| download | sharkey-32da569ef6ac93b1e187d9461b04c6d8a31ba0ba.tar.gz sharkey-32da569ef6ac93b1e187d9461b04c6d8a31ba0ba.tar.bz2 sharkey-32da569ef6ac93b1e187d9461b04c6d8a31ba0ba.zip | |
#1029
Diffstat (limited to 'src/server/api/endpoints')
| -rw-r--r-- | src/server/api/endpoints/users/lists/push.ts | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/server/api/endpoints/users/lists/push.ts b/src/server/api/endpoints/users/lists/push.ts index 467c08efd4..5d6f201524 100644 --- a/src/server/api/endpoints/users/lists/push.ts +++ b/src/server/api/endpoints/users/lists/push.ts @@ -1,7 +1,10 @@ import $ from 'cafy'; import ID from '../../../../../cafy-id'; import UserList from '../../../../../models/user-list'; -import User, { pack as packUser } from '../../../../../models/user'; +import User, { pack as packUser, isRemoteUser, getGhost } from '../../../../../models/user'; import { publishUserListStream } from '../../../../../publishers/stream'; +import ap from '../../../../../remote/activitypub/renderer'; +import renderFollow from '../../../../../remote/activitypub/renderer/follow'; +import { deliver } from '../../../../../queue'; /** * Add a user to a user list @@ -48,4 +51,11 @@ module.exports = async (params, me) => new Promise(async (res, rej) => { res(); publishUserListStream(userList._id, 'userAdded', await packUser(user)); + + // このインスタンス内にこのリモートユーザーをフォローしているユーザーがいなくても投稿を受け取るためにダミーのユーザーがフォローしたということにする + if (isRemoteUser(user)) { + const ghost = await getGhost(); + const content = ap(renderFollow(ghost, user)); + deliver(ghost, content, user.inbox); + } }); |